2013-08-26 75 views
2

我的SVN服務器剛剛進行了一次潛水。我有備份,但這個失敗真的適合遷移到Git。我有一個本地副本回購檢出......事情是,我希望能夠將回購遷移到Git而不會失去我的6k提交歷史記錄,而不必經歷恢復備份的所有麻煩。 ..Svn服務器已死...我仍然可以轉換爲Git嗎?

我可以吃我的蛋糕嗎?或者我需要打破備份?!

我的猜測是沒有...

回答

4

根據您的備份外觀,也許您可​​以從備份中獲取SVN目錄,然後將其用於轉換爲git。

這就是你不需要恢復完整的服務器/備份來轉換它的歷史。

編輯:有關訪問SVN目錄的更多信息。
只是爲了說明已簽出的SVN目錄不包含任何歷史記錄。
獲取歷史記錄需要駐留在服務器上的SVN存儲庫目錄。該目錄至少包含conf,db目錄和format文件。

只要SVN目錄(從服務器)是可用的任何SVN命令可以直接針對此使用的文件://而不是使用svn://或svn + SSH:// URI

示例將SVN轉換爲git:git svn clone file:///restore/svnservdir optional_git_dir
More about converting SVN to git

+0

是的,我會走這條路。 file:// - URL是成功的祕訣。其轉換速度也快得多 –

+0

這聽起來非常有前途!我可以僅使用文件系統備份來做到這一點,還是我需要從svn中執行「Hotbackup」?它看起來像我沒有svn hotbackup,只是文件系統備份... – jacobfogg

+0

@jacobfogg你只是想要SVN目錄(從服務器)和彼得提到使用file:// URI ex * nix :'git svn克隆文件:/// restore/svnservdir optional_git_dir' – NiKiZe

3

不,你的本地副本不包含提交歷史。如果你想這樣做,你將不得不從備份恢復。

+1

具體而言,您必須從*服務器的*備份中恢復。 –

相關問題