2008-11-04 78 views
3

我有一個大的源代碼樹(> 2 GB,WINCE構建樹),我想開始使用Subversion進行管理。到目前爲止,通過保留樹的多個副本來管理「版本控制」,並使用「超越比較」來找出差異。如何將目錄結構導入到SVN中,保持文件和文件夾修改日期相同?

我看到使用Subversion的最後一個絆腳石是它將文件時間戳修改爲提交時間。這使得Beyond Compare比較花費更多時間,因爲您必須執行二進制比較才能找到更改。

我看過Subversion源代碼樹的meta-data versioning分支,但我寧願不嘗試將2006年的代碼合併到當前的svn源代碼中。

感謝,

戴夫

回答

2

有控制時間戳是如何存儲在倉庫中的SVN配置選項:

use-commit-times 

通常你的工作拷貝文件有 時間戳反映他們受到的任何進程觸動最後一次 , 無論是你自己的編輯還是 某些svn子命令。這通常是 方便開發 軟件的人,因爲構建系統通常會將時間戳看作 決定哪些文件需要重新編譯的 。

在其他情況下,但是,它的 有時不錯的工作副本 文件有反映 他們在 庫被改變的最後一次時間戳。 svn導出命令 始終將這些「最後提交 時間戳」放置在它生成的樹上。 通過設置此配置變量爲 是的,svn checkout,svn update,svn 開關和svn revert命令將 也設置 他們觸摸的文件上的最後提交時間戳。

Runtime Configuration AreaConfiguration Options

BTW,超越比較石頭!我使用了所有提到的svn diff,TortoiseMerge和BC2。 BC2是最完整的。

0

Subversion會做之比較比甚至超越比較會做..

如果使用TortoiseSVN,你甚至可以用無法比擬的外部diff工具快得多。

+0

這是用戶的問題,而不是系統沒有做它應該做的。感謝您及時的回覆。 – DavidEBest 2008-11-04 13:04:43

0

快速檢查後:如果您從工作副本提交文件,它會保留它的時間戳(上次修改時間)。即使在更新之後(沒有對該文件進行進一步的遠程更改),該文件也會保留上次修改的時間戳。該測試是在Subversion版本1.4.6的Linux上進行的。

如果更新文件,該文件已遠程更改,則會獲取新的時間戳。

因此,您保留上次修改的時間戳。

此外:爲什麼你想使用'比較'比較。您將不再需要保留不同的目錄以反映不同的版本。而Subversion有自己的差異特徵來爲修訂組合準備差異。

+0

這是用戶的問題,而不是系統沒有做它應該做的事情。感謝您及時的回覆。 – DavidEBest 2008-11-04 13:03:33

0

在每個客戶端的m/c配置文件中是否需要將「use-commit-times」設置爲yes或者是否有任何選項將它集中在Subversion安裝目錄中?

相關問題