2009-12-23 19 views
5

是否有一種工具可以讓我獲得與Perforce相同的git-svn功能?我在github上看到了git-p4,但它看起來像是從git repo導入源到Perforce repo。它是否相反?它是打算作爲一個頻繁的工具使用,還是僅僅是一次性的進口型工具?任何類似於Perforce的git-svn?

場景:我是一個承包商,我的客戶使用Perforce作爲源代碼控制,但我想在本地使用git。

+0

剛剛完成我的答案在迴應您的評論 – VonC 2009-12-26 16:32:28

回答

7

git-p4可以兩種方式。使用git-p4 syncgit-p4 rebase更新您的本地工作區,然後在本地使用git。準備好將您的git提交提交到p4時,請使用git-p4 submit

您需要創建一個P4客戶端(與git workarea分開),並專門用於使用git-p4進行同步。

我在本地使用這一點,它已經工作了好幾個月,有幾個注意事項:

  • 還可以使用Git分支在本地,但P4不知道他們什麼。它只會看到主人。

  • 文件重命名將在P4中顯示爲add + delete,而不是首選的integrate + delete。

  • 運行git-p4 submit時會重新創建Git提交,所以時間戳將會關閉,您可能會將問題與其他git分支合併。 (就像「從上游底墊中恢復」的問題。)

+0

謝謝斯科特,這是個好消息。我會盡快給這個機會。當你運行git-p4提交時,它如何知道要提交哪個p4分支/位置?我想看看如何處理不同的p4分支:) – 2010-01-01 14:57:53

+1

它使用您告訴它的p4客戶端提交文件。所以,無論客戶端映射到哪裏。我想你可以在任何時候改變p4客戶端的映射,但是你必須小心,因爲git-p4使用'p4改變...'來找出哪些改變需要導入到git中,所以當你改變的時候客戶端映射,git-p4可能無法獲得同步git workarea所需的所有更改。 – ScottJ 2010-01-02 07:03:46

+0

增加了關於'git-p4 submit'基本上如何改變你的git workarea的另一個警告。 – ScottJ 2010-01-02 07:06:06

相關問題