您好,登錄后才能下訂單哦!
本文git版本1.9.6
一、創建分支,刪除分支
二、創建分支,合并分支,刪除分支
三、創建分支,git 3-way merge,刪除分支
git branch 相關命令
git branch # 列出目前有多少branch git branch new-branch # 產生新的branch (名稱: new-branch), 若沒有特別指定, 會由目前所在的branch / master 直接復制一份. git branch new-branch master # 由master 產生新的branch(new-branch) git branch new-branch v1 # 由tag(v1) 產生新的branch(new-branch) git branch -d new-branch # 刪除new-branch git branch -D new-branch # 強制刪除new-branch git checkout -b new-branch test # 產生新的branch, 并同時切換過去new-branch # 與remote repository 有關 git branch -r # 列出所有Repository branch git branch -a # 列出所有branch
1、創建分支,刪除分支
1.1、創建branch
1.2、切換到新的branch;Testbranch
在切換過程中HEAD執行變化如圖:
也就是說雖然切換后HEAD指向了Testbranch,可是Testbranch還是和master一樣指向了最后一次的commit;
驗證如下:
切換后的HEAD
1.3、切換回master,進行驗證,并刪除Testbranch
刪除Testbranch,并且分支索引文件也不存在了。
2、創建分支,合并分支,刪除分支
2.1、查看當前master的最后commit log ;創建分支Testbranch
2.2、在當前分支修改code,并且進行commit,查看當前commit log;
2.3、切換回master,查看commit log 合并分支,查看commit log ;并刪除分支Testbranch,查看 commit log;
Tips:
為什么要合并后再刪除Testbranch呢?
在master 分支,他對應的最后索引為last commit,
而在Testbranch分支,他對應的最后索引為他剛剛的commit,我們假設為B;
如果我們強制將在Master分支刪除分支Testbranch,那么Testbranch分支剛剛的commit就無效了;所以我們要先合并Testbranch后,在進行刪除,合并后索引如圖:
可以從上面的commit log 看出;
3、創建分支,git 3-way merge,刪除分支
Ps:上面創建了分支,并且在分支修改code,,進行提交,如果在分支進行修改code,并且在master進行修改code呢?
3.1、查看master分支commit log ,創建Testbranch分支,查看commit log ,兩次修改code,分別進行commit,查看commit log;
$ echo "print \"Test1\"" >> hello.pl $ git commit -am "test1" $ echo "print \"Test2\"" >> hello.pl $ git commit -am "test2"
3.2、切換至master,查看commit log;修改code,進行commit;查看commit log;
3.3、將Testbranch進行合并;刪除Testbranch
$ git merge Testbranch $ git branch -d Testbranch Deleted branch Testbranch (was ec4c4ba).
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。