簡體   English   中英

強制合並到git的分支中

[英]Force merging in a branch in git

目前,我在foo分支上,由於合並原因復雜,我想合並分支bar更改,git顯然認為這是foo的一部分。

不幸的是,結果是如果我跑步

git checkout foo
git merge bar

盡管分支bar有一些更改要進入分支foo ,但我將得到消息Already up-to-date的消息。

我考慮了兩種可能的解決方案。

一種可能是簡單地檢出bar ,將其復制到其他地方,檢出foo ,然后手動執行合並。 這將起作用,但是如果存在這樣的問題,我寧願選擇一種較少手動的解決方案。

另一種可能性是進行反向合並,即將foo合並為bar 不幸的是,當我嘗試執行此操作時,git的自動合並功能會完全擦除我要保留的bar更改,並用foo更改替換它們,這是不希望的。

如何強制git假裝bar在將來而foo在過去,以允許bar合並到foo

這不是一個聰明的解決方案,但應該可以:

首輪

git diff -p foo bar <files_you_want_to_merge> > patch

生成路徑文件並在必要時對其進行編輯(例如,刪除foobar更新的那些文件)。

然后跑

git checkout foo
git apply patch

將'偽合並' barfoo

暫無
暫無

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

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