2012-11-28 36 views
7

我正在使用git-svn來管理使用git的Subversion存儲庫。我通常在任何時候都有大量的git分支。如何在所有分支上運行git svn rebase

我經常需要更新它們以匹配存儲庫中的最新代碼,但是發現每個分支運行git checkout <branch>; git svn rebase都很痛苦。

有沒有比寫一個腳本(這將需要處理衝突)更簡單的方法嗎?

編輯:因爲過程中最慢的部分接觸顛覆服務器和下載更新,它的速度更快的一個分支運行git svn rebase然後git svn rebase --local上休息。

還有更好的方法嗎?

+0

有趣的問題,我想知道是否有一個更簡單的方法。但據我所知,沒有捷徑。你真的在所有這些分支上工作嗎? – Konst

+0

我通常在一次開發一些開發工作。另外,我喜歡及時更新我目前沒有工作的任何分支機構,否則我傾向於發現我需要進一步進行痛苦的合併。 –

回答

4

我覺得你的編輯有鼻子上的解決方案:

因爲過程中最慢的部分接觸顛覆服務器和下載更新,它的速度更快運行的一個分支,然後混帳SVN變基其餘的git rebase git-svn。

我也爲我的git-svn倉庫使用了很多本地git分支,並且發現自己每天都會重新綁定它們,以使它們儘可能地接近遠程分支。使用單個跟蹤分支來跟蹤遠程分支,然後重新分配/合併每個分支似乎是從我自己有限的經驗中管理這種特定情況的最有效方式。

+0

非常真實。除非他們都會在沒有衝突的情況下發生全部變形,否則你無法一次性將它們重新整齊。你幾乎必須連續進行rebase。 – quickshiftin

相關問題