git flow 鎮樓

轉載請注明出處:https://www.cnblogs.com/NaughtyCat/p/differ-with-rebase-merge-cherry-pick.html
- merge
這個簡單,初學者常用,比如主分支是Dev,最新版本是01,然后小明基于此,搞了個feature 分支A,業務:打醬油
然后在上面多次提交,完成功能迭代開發,如A1 ---> A2 ---> A3(作者【CoderBaby】)
Dev 分支 merge A branch,最后Dev 分支的歷史log就變成: Dev01 ---> A1 ---> A2 ---> A3
附圖如下:


- rebase
中文翻譯過來,變基,這個搞完,提交歷史會比較清爽,哈哈
a) merge會有兩條提交歷史記錄線路,有個菱形圖(C2, C3, C4, C5間關系)
b)rebase只有一條提交歷史記錄線路圖,無菱形圖(C2, C3, C4'),并且少了一個提交對不,C4好像不存在
附圖如下:

after merge

after rebase
官網說明請移步: https://git-scm.com/book/en/v2/Git-Branching-Rebasing
rebase、merge的區別參見: https://stackoverflow.com/questions/16666089/whats-the-difference-between-git-merge-and-git-rebase
- cherry pick
直譯,摘櫻桃,這個就是可以選一個分支中一個或者幾個commit來應用提交到另外一個分支,操作單元是commit 不是branch,附圖如下:

當前分支head 指向F,我可以選取另一個分支上的C commit,將其更改應用到我的分支,作為C‘ commit,
官網說明請移步: https://git-scm.com/docs/git-cherry-pick
附:
git官網中文版電子書(web版): https://git-scm.com/book/zh/v2
*****************************************************************************************************
精力有限,想法太多,專注做好一件事就行
- 我只是一個程式猿,5年內把代碼寫好,技術博客字字推敲,堅持零拷貝和原創
- 寫博客的意義在于鍛煉邏輯條理性,加深對知識的系統性理解,鍛煉文筆,如果恰好又對別人有點幫助,那真是一件令人開心的事
*****************************************************************************************************
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/5486.html
標籤:其他
上一篇:騰訊云推出一站式 DevOps 解決方案 —— CODING DevOps
下一篇:SVN工具常用功能總結
