2011-05-10 88 views
4

我正在嘗試執行git rebase將數據遷移到已斷開連接的SVN克隆分支。Git rebase - 合併衝突時強行覆蓋

比方說,我正在嘗試這與SoundManager2 repo from Github

大約前20個左右的rebase行動將正常工作。之後,它將開始發生一些衝突。他們中的大多數會自動解決,但不管它使我停下來並繼續。

在這種情況下,我不在乎衝突是什麼。 我只想用任何最新的文件覆蓋任何衝突的文件。我試圖得到不同的合併策略工作,但沒有成功。

任何想法或想法?謝謝。

+0

我不確定你想要發生什麼。你是否想要分支上的最新版本,或最新的非衝突版本? – MatrixFrog 2011-05-10 01:59:37

+0

我試圖從'master'運行一個大的rebase到'git-svn'。無論出於何種原因,即使'git-svn'是一個乾淨的石板,運行rebase也會產生一堆合併衝突。我想我想要的是我正在重組的最新產品。如果可能的話,我想保留所有的歷史記錄。 – jocull 2011-05-10 02:48:20

+0

另外,我會補充說我將整個分支轉儲到一系列約500個補丁文件中。運行'git am ../ patches/*'會導致與rebase相同的衝突。 – jocull 2011-05-10 02:49:17

回答

-1

你總是會遇到這個問題。 Git在發生衝突時不能承擔任何責任。聽起來就像你想要你的改變是在任何發佈到svn repo上的。我會用「rerere」來幫助你。

嘗試合併最新更改時,合併通常會更好。

祝你好運!

+0

有什麼辦法來強制執行嚴格的歷史記錄,以便Git不試圖合併兩個不同的分支在他們準備好之前,彼此的頂部? – jocull 2011-05-10 14:57:54

+0

使用SVN,您的選項有限。你將不得不「趕上」,然後確保你經常帶來最新的SVN,這樣你就不會再陷入同樣的​​局面。就像我說的,做一個合併並將其合併到svn分支。推動它。然後保持最新狀態。 – 2011-05-10 21:50:31