在實際的項目開發中(使用Git版本控制),在所難免會遇到沒有切換分支開發、需要在另一個分支修改bug然后合並到當前分支的情況。之前遇到這種第一反應就是將分支合並過去來解決問題。如果你那些提交當中也穿插了其他人的提交而且他們的提交不可以合並到另一個分支,那么使用分支的合並將明顯變得困難。下面分享給大家一個非常好用Git的命令Cherry-Pick來處理這些情況,從而提高開發的效率。
What is Cherry-Pick ?
git Cherry-Pick命令可以選擇某一個分支中的一個或幾個commit(s)來進行操作。你可以理解merge的個性定制版本,哈哈~~
How use Cherry-Pick ?
假設我們有兩個分支,一個是master分支,一個是從master分支Git Commit Log為“修改側欄內容”新建出來的dev分支。
現在需要將master分支下的git Log commit "修改側欄的點擊跳轉方式"合並到dev分支。也許你可能想到將這個Log上面的Logs先Revert,然后再將master分支合並到dev分支。下面記錄一下怎么使用Cherry-Pick來合並一個或者多個提交。
1.先將當前分支切換到dev分支。
2.打開master的所有提交Log,找到需要合並到dev分支的提交,這里我們找到“修改側欄的點擊跳轉方式”這個提交,然后點擊右擊選擇菜單彈出Cherry-Pick命令。
3.接着,IDE會彈出熟悉的提交提示框架,這時我們點擊Commit或者Commit and Push...就可以將需要合並的提交合並到dev分支了。 這里我選擇了Commit and Push...。
查看dev分支的Log可以看到那個提交已合並到dev。
Note
當你需要將某些提交合並到另一分支的時候,一定一定一定要按提交的順序進行合並,不然會導致某些文件發生沖突。這也是我實際項目中踩過的坑。
End
- 當你的需求還沒有完成的時候,其他人應該切換到另一分支開發的時候,你可以先在當前分支繼續開發完,然后再選擇Cherry-Pick命令合並過去就可以了。
- 當你需要將某個人的commits合並到另一開分時候,可以選擇Cherry-Pick命令。(在實際的項目開發中,在所難免有人會提交錯分支)
- 當你切換到某條分支修改Bug后,需要將修改提交合並另一分支,可以選擇Cherry-Pick命令。
這是一個非常好用、有趣的命令,它提高了我的開發效率~~在此,分享給大伙,希望可以幫忙到更多的人! 點擊關注我