合併自動填入消息,如「合併分支」功能「分支開發」。我總是保持這些消息不變,所以我可以看到合併的分支曾經被調用過。這是這些信息唯一保留的地方。如果刪除這些合併消息和分支,就是這樣。你無法弄清楚再一次是什麼。
我會爲某個功能簽出一個新的分支,在其上工作,然後切換回我分支的任何分支 - 通常是主人,但不總是 - 然後git merge --no-ff <feature branch>
。這裏有一些例子,從一個項目中,我一直在操縱一個角色動畫承諾:
* c117bff Make squash joint scaling uniform
* 9eb9ac2 Fix eyelid control limit
* b50c967 Merge branch 'lipWeightImprovements'
|\
| * 6f98ea7 Smooth cheek weighting
| * fdf3f91 Improve lip weights
|/
* 4434223 Merge branch 'hair'
|\
| * a3f3f89 Add hair controls for front half of head
| * 22a6bf4 Add joints for and weight front hair pieces
|/
* c338c14 Move archived script into archive/scripted folder
注意兩個合併分支 - 每一個說「合併分支‘什麼’」。這是主分支的一個獨特方面,我並不是那麼喜歡。如果您合併到主設備,它不會將主設備放在合併消息中。如果我已經合併到了「發佈」分支,它會在這些消息中添加「釋放」。即使我稍後刪除了分支頭,合併消息告訴我那些分支曾經被調用過。
這裏有注意兩件事情:生產
- 這個圖表是用
git log --all --decorate --graph --oneline
(這些標誌可以以任意順序)。這組4個標誌非常常見,大多數人都會將它們別名,並且我已經看到了各種別名。我使用la
作爲'全部列出',而這只是4個標誌。我還有las
和lass
用於'短'和'超短'版本, -10
和-25
標誌,這是我工作的每臺機器的不同數字。我喜歡las
顯示一半的屏幕價值的物品,lass
顯示略低於四分之一的價值。我也有lb
- '列表分支' - 這些的版本,這只是離開-all
標誌,所以它只列出我所在分支的歷史。
- 當您進行提交時,會移至此圖的左上角。直接在左側的提交線將成爲'第一個父',這意味着通過當前分支的歷史合併到的提交。總是合併的所有分支在從左邊進來。 Git甚至會通過其他行向右劃一條線,以便在某些情況下可以環繞左側,所以分支合併總是從右側進入,併合併到左側。通過這種方式,你總能找出你的歷史中發生了什麼。
如果你想要我的LA /磅的別名,只需要運行這些命令:
git config --global alias.la 'log --oneline --graph --all --decorate'
git config --global alias.las 'log --oneline --graph --all --decorate -20'
git config --global alias.lass 'log --oneline --graph --all --decorate -8'
git config --global alias.lb 'log --oneline --graph --decorate'
git config --global alias.lbs 'log --oneline --graph --decorate -20'
git config --global alias.lbss 'log --oneline --graph --decorate -8'
那將其設置爲所有回購(通過你的〜/的.gitconfig文件)。調整數字來品嚐。