Git 是一個開源的分布式版本控制系統,用于敏捷高效地處理任何或小或大的項目。相比同類軟件,Git有很多優點。比如版本的分支(branch)和合并(merge)十分方便。
GIT
GIT常見的分支說明管理
主分支 (Master)
代碼庫應該有一個且僅有一個主分支,Git主分支的名字默認叫做Master。它是自動建立的,版本庫初始化以后,默認就是在主分支在進行開發。一般來說所有提供給用戶使用的正式版本,都在這個主分支上發布。當然這是絕大多數情況,比如有個客戶根據不同的生產環境(公有云、本地化內網環境、以及其他環境)分別維護3個分支的代碼,而且這三個環境的長期存在,所以我們發布的時候從對應分支發布即可。
開發分支(Develop)
主分支只用來分布重大版本,日常開發應該在另一條分支上完成。我們把開發用的分支叫做Develop,有的公司甚至一個開發人員建立一個分支,當然可以按照實際情況來規劃分支管理。
其它分支
除了常設分支以外,還有一些分支用于應對一些特定目的的版本開發,主要有三種:功能(feature)分支、預發布(release)分支、修補bug(hotfixes)分支。這些分支代碼測試完成最終會合并到主分支上,如果不需要了可以刪除。
git分支
GIT常見命令整理
自帶的GitGui提供了簡單的圖形界面,另外我們可以安裝TortoiseGit很方便地進行git相關操作(如代碼提交、推送、創建分支等)
$ git clone [url] 拷貝一份遠程倉庫
$ git add [file1] [file2] ...添加文件到倉庫
$ git status 查看倉庫當前的狀態,顯示有變更的文件。
$ git commit 提交暫存區到本地倉庫。
$ git fetch 從遠程獲取代碼庫,即獲取
$ git pull 下載遠程代碼并合并,拉取
$ git push 上傳遠程代碼并合并分支管理相關命令
版本回退命令
# 回退所有內容到上一個版本
$ git reset HEAD^
# 回退 hello.java 文件的版本到上一個版本
$ git reset HEAD^ hello.java
# 回退到指定版本
$ git reset 134b
分支管理相關命令
查看所有分支
$ git branch -a
查看當前使用分支(前面標*號的表示當前使用分支)
$ git branch
切換分支
$ git checkout 分支名
拉取該分支的代碼
$ git pull
切換到主分支
$ git checkout master
分支的代碼合并到主分支
$ git merge 分支名
$ git merge –no-ff 分支名
默認情況下,Git執行”快進式合并”(fast-farward merge),會直接將Master分支指向Develop分支,使用–no-ff參數后,會執行正常合并,在Master分支上生成一個新節點。為了保證版本演進的清晰,我們希望采用這種做法。
新建dev分支并且切換到新分支上
git checkout -b dev master
刪除分支
git branch -d 分支名
修改提交的歷史信息
git commit –amend
版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。