我正在使用git cvsimport
來使用CVS服務器,它工作正常。 但是,一些非常古老的項目有很多提交和大文件。它會導致cvsimport花費很長時間檢查所有提交併將它們轉換爲git格式。如何讓git cvsimport checkout在某日期後更改?
我cvsimport
這樣的:
git cvsimport -v -a -d :pserver:[email protected]:/cvs cvsroot/my_module
是否有可能一些日期後,選擇提交?
我正在使用git cvsimport
來使用CVS服務器,它工作正常。 但是,一些非常古老的項目有很多提交和大文件。它會導致cvsimport花費很長時間檢查所有提交併將它們轉換爲git格式。如何讓git cvsimport checkout在某日期後更改?
我cvsimport
這樣的:
git cvsimport -v -a -d :pserver:[email protected]:/cvs cvsroot/my_module
是否有可能一些日期後,選擇提交?
從理論上講,您應該可以使用git cvsimport
的-p
選項與cvsps
的-d
選項一起使用。下面是從該名男子頁的兩個相關的提取物:
的git cvsimport:
-p選項<換cvsps>
爲cvsps附加選項。選項-u和-A是隱含的,不應在此處使用。
如果您需要傳遞多個選項,請用逗號分隔它們。
cvsps:如果
-d <日期1> -d <日期2> 僅指定一個日期,顯示修訂版比DATE1更新。如果指定了兩個日期,則顯示兩個日期之間的修訂。
不幸的是,當我用它,cvsps抱怨日期:
$ git cvsimport -v -d <cvsroot> -p "-d '2012/01/01 00:00:00'" <module>
Running cvsps...
bad usage: invalid argument -d '2012/01/01 00:00:00'
Usage: [...]
git cvsimport: fatal: cvsps reported error
運行cvsps
本身可以接受的日期了,所以這樣的兩個步驟應該工作。
cvsps -d '2012/01/01 00:00:00' > patchset
git cvsimport -d <cvsroot> -P patchset <module>
您可以檢查cvsps的輸出,以確認它只有您指定的日期之後的變化,運行冗長cvsimport
命令。
我猜你必須用逗號單獨的cvsps參數:
git cvsimport -v -d <cvsroot> -p -d,'2012/01/01 00:00:00' <module>
它究竟籤的日期後的變化。但是,在日期之前沒有任何快照。 :D – qrtt1 2012-02-27 06:23:52
無論如何,這是有用的信息。我可以按日期簽出快照,然後應用cvsimport。非常感謝你。 – qrtt1 2012-02-27 06:39:30