我的公司正在轉向TFS。我們目前正在使用Tortoise SVN。我希望能夠在SVN中留下一個項目,但是有些如何禁用它,以便人們不能提交更改,但我們仍然可以查看歷史記錄。如何在Tortoise SVN中禁用項目
到目前爲止,我已經重命名了一個項目併發布了一條消息,表明它目前在TFS中,而不是進行更改。我的問題是,所有的歷史都消失了。我想保持歷史。
請幫忙。
我的公司正在轉向TFS。我們目前正在使用Tortoise SVN。我希望能夠在SVN中留下一個項目,但是有些如何禁用它,以便人們不能提交更改,但我們仍然可以查看歷史記錄。如何在Tortoise SVN中禁用項目
到目前爲止,我已經重命名了一個項目併發布了一條消息,表明它目前在TFS中,而不是進行更改。我的問題是,所有的歷史都消失了。我想保持歷史。
請幫忙。
我最終做的是從SVN中刪除項目。這使它消失,但如果你回到以前的版本,你會發現刪除版本。如果您認爲您能夠下拉簽入的最新版本,但無法提交更改。您也可以從這一點看到所有歷史記錄。
對於問題的第一部分,「我如何在SVN中創建只讀?」,我不知道。如果您進行完整的歷史記錄遷移,則不需要那麼做。
您將最新的源代碼移至TFS,因此當然您沒有歷史記錄。如果你想將歷史從SVN遷移到TFS,我見過的最簡單的方法就是使用Git作爲中介。
Git natively supports SVN。 There are tools that allow Git and TFS to interoperate。既然你可以從SVN獲得代碼到Git中,並且你可以從Git獲得代碼到TFS中,你可以將你的SVN版本歷史轉儲到Git中,然後將它從Git遷移到TFS。
的基本過程是這樣的:
git svn
把你的SVN倉庫到Git倉庫這樣,歷史將被保留,但時間戳將丟失。
當然,我假設你在使用TFVC。如果您使用的是Git-in-TFS,則更容易:從SVN數據創建Git存儲庫後,只需將其推入TFS即可完成。
好東西,我知道如何禁用任何承諾或以上版本庫的修改是通過在服務器使用start-commit
hook
掛鉤是一個簡單的.bat
文件與此內容:
echo committing is disabled for that repository. >&2
exit 1
名稱文件start-commit.bat
,並將其放入存儲庫的hooks
文件夾中。這就是全部。
注:
這是一個windows
腳本。對於其他服務器,你需要另一個腳本。
我們沒有進行遷移。我們沒有進行遷移的主要原因是因爲項目沒有正確設置。我基本上不得不重建項目,然後檢查他們到TFS。我們也沒有使用GIT。我真正想要做的就是,讓SVN非常明顯,項目不再從那裏編碼,並且您需要使用TFS版本。我不知道正確的策略,或多或少,我希望如何斷開任何給定項目的所有當前結賬,以便他們必須從TFS獲取它,但保留歷史IN SVN。 – hondaman2003 2014-12-11 15:07:02