簡體   English   中英

合並git branch時,如何避免在分支中提交日志?

[英]when merging git branch, how to avoid the commits logs in a branch?

如果另一個開發人員在分支DEVELOPER_A上分支出來,並在該分支上做了很多提交,那么當他完成時,我想將他的工作合並到master上。 但我不希望他的所有小提交都出現在主分支歷史中,只關心最后一次提交。 那么當合並那個分支時,有沒有辦法在分支DEVELOPER_A上“壓縮”他的歷史?

我可以在developer_A分支上獲得補丁,並應用於master,但我擔心git會忘記結果是從developer_A分支合並的事實,而只是認為這是一些獨立的更改

謝謝楊

您可以通過多種方式執行此操作,但最明顯的是使用壓縮合並。

git merge --squash <other_branch>
git commit

請注意,git會使用來自壓縮提交的日志消息預先填充您的合並提交消息,但您可以自由編輯或刪除適合自己的消息。

大多數時候你想要清理歷史,而不僅僅是把所有東西都放在一起。 這個工具就是git rebase(非常小心使用, 從不發布過的東西,因為改變歷史會為你的下游造成破壞)。

OTOH,有一個詳細的歷史記錄(微提交)非常有用,可以追逐bug(看看git bisect)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM