2010-01-19 99 views
8

我一直在使用Git & Git-Svn一年左右現在,不知何故只是注意到,在dcommit後,我的提交歷史被保留,但時間戳不是。換句話說,每個git提交條目都被保留,但在Svn中,每個提交都有相同的時間戳(或多或少)。Git-Svn:保留提交時間戳後dcommit

對於我來說,在一段時間內遠程工作一天左右並不罕見,在此期間進行任何數量的提交。理想情況下,我希望我的svn日誌反映我提交git的時間,而不是提交(連同其他任何提交)到svn的時間爲dcommitted。那可能嗎?

謝謝。

回答

8

當git-svn創建Subversion提交時,它的作用與您通常用Subversion創建提交時的做法基本相同。這意味着Subversion時間戳將是git svn dcommit操作運行的時間。

即使您可以更改提交時間戳,這可能不是您想要執行的操作。通常人們會期望Subversion中的提交時間戳遵循按照時間順序遞增的順序,並且在存儲庫中看到「後退」時間戳可能會令人困惑。

+0

不夠公平。在這種情況下,我碰巧一個人在一個項目上工作,但你說得對,在團隊情況下它會令人難以置信地混淆。特別是因爲每個git提交都通過rebase在以前的任何更改上應用。 – 2010-01-19 20:45:01

1

如果您在服務器上使用SubGit,這是可能的。它儘可能保留Git提交日期(不幸的是,SVN存儲庫有一個內部限制,即日期應按時間順序排列,否則一些二進制搜索算法將無法正常工作)。 我知道沒有其他解決方案可以在同一個提交事務內修改svn:date 。據我所知,Git-svn使用libsvn SVN引擎,它不允許這樣的svn:日期修改(只有在創建修訂並且知道其編號的事務之後)。