2014-10-02 40 views
0

新提交在運行時自動重訂dcommit git svn dcommit混帳svn的會自動完成的git svn rebase相當於如果不是所有提交本SVN存儲庫中已經融入了分支被提交。是否有可能禁用此行爲?我希望git svn docmmit發生故障,而不是git push在默認情況下在非快速前進中失敗。防止從是否有SVN倉庫

我講的這種行爲:

$ git svn dcommit 
Committing to svn://[...] 
    [lists committed files] 
Committed r1857 
    [lists changes in the repostiory since last rebase] 
r1856 = 3062cfbe5c3ab56d5d6e16cadba55cfa73e35c6e (refs/remotes/svn/trunk) 
    [lists differences between committed revision and latest repository revision] 
r1857 = 3a57b29f6e5006925f0ab7ec931e9ecf3b64b11b (refs/remotes/svn/trunk) 
W: d3fbaa461d5ef643e400be7f6727fe6ef89a9d26 and refs/remotes/svn/trunk differ, using rebase: 
:040000 040000 16b8ed30058d274f5f57560e06f2e8598312e0b4 dbe9d86a21aee9f4832021436f489b8e3ed8ed6e M [...] 
First, rewinding head to replay your work on top of it... 
Applying: [rebases commits that were not yet committed] 

之後重訂基期提交被自動提交。

回答

1

你也許可以嘗試的git svn fetchgit merge --ff-only <svn/branch>

+0

組合嗯......這_will_防止犯是否有新犯SVN倉庫比之前,我開始了我的操作分支衍合上。但它不會阻止兩個人同時進行。也許這是我們向SVN提交時最好的。如果它引用聲明SVN無法阻止像Git那樣的併發提交來執行推送操作的來源,我會接受一個答案。 – Feuermurmel 2014-11-20 15:05:25

+0

我很驚訝地發現,經過快速測試,SVN確實允許在客戶端已經過時修改時提交更改,只要發送的文件在服務器上未被修改即可。否則它會停止,並且git-svn會顯示消息'SVN出錯:事務已過期。 – 2014-11-20 20:24:16

+0

我感覺這就是SVN的工作原理。即SVN只能保證提交中更改文件的完整性,而不是更多。 – Feuermurmel 2014-11-27 13:11:57