2013-04-21 121 views
1

這種情況要求我在git repo上版本化我自己的工作,而項目的「trunk」在svn repo上,這意味着我將經常需要更新我的svn工作副本並將其修訂版本合併到我的git工作副本中,並且反之亦然。是否有任何簡單的方法在svn和git中執行此操作?我目前使用SmartGit和TortiseSVN作爲客戶端。合併svn工作副本到git工作副本,反之亦然?

回答

2

是的,請使用git svn。請查看man page以瞭解更多詳細信息,但基本思路是您可以使用git svn clone克隆svn回購,然後將所有內容與git svn rebasegit svn dcommit保持同步。

+1

任何想法,我會怎麼做,在SmartGit?它只允許我選擇克隆SVN或Git,而不是git-svn,並且當我拉取svn repo或反之亦然時,我沒有看到任何地方進入我的git存儲庫。新問題[這裏](http://stackoverflow.com/questions/16127997/merging-an-svn-working-copy-into-a-git-working-copy-and-vise-versa/16128010?noredirect=1# 16128010)。如果沒有,我仍然有興趣知道如何合併工作副本。 – Ford 2013-04-21 05:01:04

+0

有沒有理由不能使用命令行?我猜在最壞的情況下,你可以在'SmartGit'中使用'git'並創建一箇中間庫來處理'svn'的東西。 – 2013-04-21 05:04:24

0

使用SmartGit/Hg克隆存儲庫。根據URL,它會立即識別出它是一個SVN倉庫,否則它會問你。在這種情況下,請選擇SVN。使用時將產生的克隆類似,你會得到什麼混帳svn的,但是SmartGit的功能是顯著更強大:

http://www.syntevo.com/smartgithg/svn-tour.html

http://www.syntevo.com/smartgithg/documentation.html?page=concepts-svn

+0

謝謝 - 即使我之前已經對他們進行過很多次了,但我仍然沒有看到它會如何讓我做我正在談論的內容。對我來說,使用帶有SVN的SmartGit可以讓你用SVN庫來模擬Git的一些功能,但是我沒有看到文檔中的任何內容解釋瞭如何在同一時間使用它與你的Git倉庫(這正是我想要做的)。你可以告訴我在克隆你的SVN存儲庫後,如何解釋如何從你的Git倉庫中進行推送或拉取? – Ford 2013-04-21 13:56:13

+0

SmartGit/Hg將爲您提供功能齊備的Git存儲庫。您將擁有一個「SVN遙控器」,而不是通常的「Git遙控器」。至於Git遙控器,您可以從SVN遙控器上按下/拉出。另外請注意,你不需要另一個Git倉庫(我目前瞭解你)。 – mstrap 2013-04-22 07:57:51