1
爲什麼在明確合併--no-ff
標誌將某些功能分支標記到乾淨的主分區(自分支後沒有新提交)之後,我可以在檢出主分支時看到特徵分支的完整提交歷史記錄?合併後沒有快進選項的分支歷史記錄
的情況可能與此ASCII圖來表示:
A-----------E -> master # E is a merge commit
\ /
B---C---D -> feature
如果事情發生在主,我想恢復它犯了,在歷史上以前的穩定點,我不得不有些過濾承諾乙,C和D,因爲一個簡單的git log --oneline
顯示它們(可能有--not feature
參數?)。在某種意義上它是合乎邏輯的,因爲這些提交可以從主控端獲得。
我的用例是一個具有臨時特性分支的原始大師,根據需要,我猜很常見。項目通常如何處理這種持續集成方案?
同時我發現'git revert [-m parent-number]'。有人說重寫歷史不是一個好主意,其他人認爲不同http://jamescooke.info/git-to-squash-or-not-to-squash.html – miquecg
我不使用'git --squash'我自己,而且我也不使用'rebase'。但他們值得了解。 git不只有一個答案。 –
也許只是格式化'git log'輸出的問題。 ' - first-parent'可以做到這一點......無論如何,我想讀另一個意見:) – miquecg