2011-06-14 38 views
6

說我有一個大的工作目錄,我正在清理不再使用的代碼段。這個過程的一部分是大量的文件。但是如果我想確保這些文件沒有被使用到任何地方,那該怎麼辦......如果我做了svn commit,它會提交我現在不想測試的所有其他代碼更改,如果我嘗試svn commit <deleted file list>它說這些文件不受版本控制(我已經對它們做了svn delete)。只提交被刪除的文件到顛覆

如何將更改僅提交到svn delete d文件?

回答

15

無法重現。

svn commit <list of svn delete'd files>工作正常。

如果你嘗試提交修改到一個已經被svn delete'd並承諾一個文件,你會得到svn: <file> is not under version control錯誤。列表中有錯誤的文件嗎?

+0

哎喲提交的其他文件,你是完全正確的。我用不正確的語法列出了這些文件。我只用一個文件測試它,它工作正常。謝謝你的回答,我認爲這是完全奇怪的不工作。 – bawkstoo 2011-06-15 13:49:09

0

您可以「擱置」您在Subversion中的更改,提交,然後將更改從現成的架構轉移到工作目錄中。

有關詳細信息,請參見http://markphip.blogspot.com/2007/01/shelves-in-subversion.html

請務必閱讀整篇文章並瞭解正在發生的事情(特別注意「更好的方法」部分)。貨架不是Subversion的「特色」,但它仍然是可能的。

10

你也可以使用修改列表 http://svnbook.red-bean.com/en/1.5/svn.advanced.changelists.html

首先,刪除文件:

$ svn rm path/to/file1 
$ svn rm path/to/file2 

然後,添加這個文件到修改:

$ svn changelist <listname> path/to/file1 path/to/file2 

$ svn changelist <listname> path/to/file1 
$ svn changelist <listname> path/to/file2 

然後你就可以提交只能修改列表

$ svn commit --changelist <listname> -m "Comment goes here" 

BTW,這種方式可以在零件