在提交之前“取消”添加一个文件到svn
我正在做一个recursion的svn添加/提交,并没有包含适当的忽略属性的文件夹。 我现在有大约100个上传的二进制文件版本,但是我还没有提交。
什么是最简单的方法来“撤消”这个,而不删除所有的文件?
使用svn revert --recursive folder_name
警告
svn revert
本质上是危险的,因为它的全部目的是丢弃数据 – 也就是你未经承诺的改变。 一旦你恢复了,Subversion 没有办法找回那些未提交的改变。
http://svnbook.red-bean.com/en/1.7/svn.ref.svn.c.revert.html
svn rm --keep-local folder_name
注意:在svn 1.5.4 svn rm中,即使指定了–keep-local,也会删除未版本化的文件。 有关更多信息,请参阅http://svn.haxx.se/users/archive-2009-11/0058.shtml 。
尝试svn revert filename
每个文件,你不需要和尚未提交的文件svn revert filename
。 或者, svn revert -R folder
有问题的文件夹的svn revert -R folder
夹,然后用正确的忽略configuration重新执行操作。
从文档:
you can undo any scheduling operations: $ svn add mistake.txt whoops A mistake.txt A whoops A whoops/oopsie.c $ svn revert mistake.txt whoops Reverted mistake.txt Reverted whoops
对于文件 – svn revert filename
对于文件夹 – svn revert -R folder
全过程(Unix svn包):
检查文件不在SVN中:
> svn st -u folder ? folder
全部添加(包括忽略的文件):
> svn add folder A folder A folder/file1.txt A folder/folder2 A folder/folder2/file2.txt A folder/folderToIgnore A folder/folderToIgnore/fileToIgnore1.txt A fileToIgnore2.txt
删除所有的“添加”标志*忽略*文件:
> cd folder > svn revert --recursive folderToIgnore Reverted 'folderToIgnore' Reverted 'folderToIgnore/fileToIgnore1.txt' > svn revert fileToIgnore2.txt Reverted 'fileToIgnore2.txt'
编辑svn忽略文件夹
svn propedit svn:ignore .
添加两个单打线只有以下几点:
folderToIgnore fileToIgnore1.txt
检查哪些文件将被上传和提交:
> cd .. > svn st -u A folder A folder/file1.txt A folder/folder2 A folder/folder2/file2.txt > svn ci -m "Commit message here"