簡體   English   中英

合並一個 git 分支,同時排除對某些目錄的更改

[英]Merge a git branch, while excluding changes to some directory

我想將分支 B 的更改合並到我的分支 A,這樣合並會排除對給定目錄的任何更改。 這里的問題是我有一些跨越多個目錄的提交,其中一個需要被排除。

類似的事情是否可能,例如,歷史重寫?

為了澄清,我的目錄結構是:

root/x
root/y
root/z

一些提交影響所有三個目錄。 現在,我想以這樣一種方式合並,即我在歷史中對yz都有更改,但對x沒有更改。

您可以合並另一個分支而不提交它,然后重置目錄的 state:

git merge --no-commit <branch>
git reset root/x
git commit

最好按照@useless 在他的回答中提到的那樣拆分您的提交

如果您的更改仍然是本地的,最簡單的方法是將您的提交拆分為真正正交的更改,您可以獨立合並。


死鏈接修復:嘗試使用此鏈接(或僅查看git rebase的本地聯機幫助頁),然后向下搜索Splitting Commits

暫無
暫無

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

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