在使用此回購(最初是SVN)的過程中,我一直沒有把文件鏈接放在一起。我已經改變了IDE兩次,將項目分解成Netbeans模塊,並在其時間內使項目變得複雜化。大部分文件歷史丟失,主要是因爲在mavenizing期間,我刪除了整個主幹,提交,複製到maven項目中,並提交。不完全是最好的想法,因爲我後來發現所有的歷史都重置到了這一點。它變得非常糟糕,以至於一個版本庫統計程序是無用的,因爲它說我有50,000行代碼投入而不是~8,000。在Mercurial中修復移動文件之間的鏈接
有什麼方法可以修復所有破損的文件歷史嗎?我有權訪問SVN和Git,如果Mercurial無法做到這一點
由於我是本回購庫中唯一的人,並且沒有人克隆它,所以我應該很好地處理它。但是,有沒有辦法在SVN中合併我做的刪除和複製提交?因爲在實施之前你仍然有破碎歷史的問題。我能想到的唯一方法是回滾到特定修訂版,完成工作,然後將所有更改應用於頂部。但是我不太瞭解如何在Mercurial中做的事情,我認爲它會釋放所有時間戳,這是我想要保存的東西。 – TheLQ 2010-12-12 07:05:39
如果你要export-everything import-everything路由,你可以使用'hg import --no-commit'合併兩個變更集,然後在執行'hg commit'之前進行兩次導入。時間戳可以設置爲您想要在變更集上進行的任何操作(請參閱'commit --date'),並且文件時間戳完全不會被追蹤。 – 2010-12-13 03:59:16
回到這個問題,我試圖做到這一點,但遇到了重建回購問題。我用'hg export --git -a -o「../patch-%r.patch」-vv 0:tip'輸出,並用(大大簡化) grep補丁\'; do hg import --similarity 90 --user「...」--force --date「...」../$i;完成;'。但是,我收到很多導入錯誤:文件不存在,它們已經存在,或者被拒絕。有什麼建議麼? – TheLQ 2011-01-16 22:54:17