Git分支的定義和操作
1.Git分支的定義
當你開發專案的時候,需要不同的版本,如果不想一直在一個專案裡邊做修改,這時候就可以使用分支。在不同分支上邊 開發可以相互不影響,需要的時候可以切換到不同的分支進行工作。同個小組不同的成員可以在不同的分支針對不同的功能進行開發,需要時進行分支合併即可。
2.Git分支的基本操作
2.1 分支的新建與合併
首先建立一個名為test的分支並切換到該分支:
$ git branch test
$ git checkout test
實現上述要求還有另外一種形式:
$ git checkout -b test
然後,我們可以檢視當前所在分支:git branch
,前面帶*的為當前所在分支。接下來切換回master分支並將test合併:
$ git checkout master
$ git merge test
最後,兩個分支已經合併成功,將test分支刪除:
$ git checkout -d test
2.2 遇到衝突時的分支合併
有時候合併操作並不會如此順利。如果在不同的分支中都修改了同一個檔案的同一部分,Git 就無法乾淨地把兩者合到一起(譯註:邏輯上說,這種問題只能由人來裁決)。例如:如果你在開發的過程中同時在兩個分支修改了同個版本的a檔案,將得到類似下面的結果:
$ git merge test
Auto-merging a
CONFLICT (content): Merge conflict in a
Automatic merge failed; fix conflicts and then commit the result.
Git 作了合併,但沒有提交,它會停下來等你解決衝突。要看看哪些檔案在合併時發生衝突,可以用 git status
查閱:
[master*]$ git status
a: needs merge
# On branch master
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# unmerged: a
#
任何包含未解決衝突的檔案都會以未合併(unmerged)的狀態列出。Git 會在有衝突的檔案里加入標準的衝突解決標記,可以通過它們來手工定位並解決這些衝突。可以看到此檔案包含類似下面這樣的部分:
<<<<<<< HEAD:index.html
“在分支test上的修改”
=======
“在分支master上的修改”
>>>>>>> a
接下來,我們只要通過文字編輯器將衝突內容修改,修改完畢後重新提交即可。
相關文章
- git分支操作Git
- Git 分支操作Git
- Git 操作——如何刪除本地分支和遠端分支Git
- 4、Git之分支操作Git
- Git 分支操作介紹Git
- git 遠端分支常用操作Git
- git哪個操作會產生commit和將A分支的程式碼剪下到B分支GitMIT
- git 基本操作|分支管理|gitlib使用Git
- 103-字串的定義和操作字串
- Git(12)-- Git 分支 - 分支簡介Git
- Git如何確定當前所在分支Git
- Git分支和版本回退Git
- Git分支建立和刪除Git
- Git分支的作用Git
- git分支Git
- Git 分支 - 分支的新建與合併Git
- Git操作 :從一個分支cherry-pick多個commit到其他分支GitMIT
- 【Git】3. Git重要特性-分支操作,合併衝突詳解Git
- Git應用詳解第七講:Git refspec與遠端分支的重要操作Git
- git的跟蹤分支和遠端跟蹤分支學習筆記Git筆記
- 合併分支:Git merge 和 rebase 的區別Git
- 成熟的 Git 分支模型Git模型
- Git修改分支的名字Git
- git合併分支和提交步驟Git
- Git 分支管理Git
- Git 使用分支Git
- Git定義命令別名Git
- git 中 rebase 是什麼樣的操作,應該從哪個分支rebase到哪個分支Git
- Git merge和rebase分支合併命令的區別Git
- git分支操作常用命令及衝突解決Git
- 【git】前端使用git分支的開發流程Git前端
- git操作之pull拉取遠端指定分支以及push推送到遠端指定分支Git
- Git——分支管理(2)Git
- git合併分支Git
- Git新建branch分支Git
- Git分支切換Git
- git-分支管理Git
- Git 分支策略與submodule對分支策略的影響Git