当你';svn更新';包含未版本化文件的本地目录,已在服务器上重命名?
我的项目目录在SVN中,但有些文件是按用户的,没有版本控制。在一台电脑上,我已重命名并成功提交。但我担心更新另一台电脑会删除所有这些文件。。。它将删除$old dir name而不是重命名它并保留内容当你';svn更新';包含未版本化文件的本地目录,已在服务器上重命名?,svn,Svn,我的项目目录在SVN中,但有些文件是按用户的,没有版本控制。在一台电脑上,我已重命名并成功提交。但我担心更新另一台电脑会删除所有这些文件。。。它将删除$old dir name而不是重命名它并保留内容 运行SVN 1.6。SVN update将使您的工作副本处于存储库的状态,这意味着它将删除存储库中不再存在的文件,并创建存储库中的新文件。但是,由于您已重命名文件,因此内容不会丢失,因此它位于重命名的文件中。历史也不会消失 下面是您的场景的测试运行: 重命名工作副本中的文件 Cmd-$> p
运行SVN 1.6。
SVN update
将使您的工作副本处于存储库的状态,这意味着它将删除存储库中不再存在的文件,并创建存储库中的新文件。但是,由于您已重命名文件,因此内容不会丢失,因此它位于重命名的文件中。历史也不会消失
下面是您的场景的测试运行:
重命名工作副本中的文件
Cmd-$> pwd
D:\Projects\C_C++\stackoverflow
Cmd-$> svn rename test_svn_rename_update\test_svn_rename_update.c \
test_svn_rename_update\test_svn_rename_update_renamed.c
A test_svn_rename_update\test_svn_rename_update_renamed.c
D test_svn_rename_update\test_svn_rename_update.c
Cmd-$> svn ci -m "renamed"
Deleting test_svn_rename_update\test_svn_rename_update.c
Adding test_svn_rename_update\test_svn_rename_update_renamed.c
Committed revision 718.
svn说它将删除旧文件并添加新文件
不提交工作副本
Cmd-$> pwd
D:\Projects\C_C++\stackoverflow
Cmd-$> svn rename test_svn_rename_update\test_svn_rename_update.c \
test_svn_rename_update\test_svn_rename_update_renamed.c
A test_svn_rename_update\test_svn_rename_update_renamed.c
D test_svn_rename_update\test_svn_rename_update.c
Cmd-$> svn ci -m "renamed"
Deleting test_svn_rename_update\test_svn_rename_update.c
Adding test_svn_rename_update\test_svn_rename_update_renamed.c
Committed revision 718.
svn删除存储库中的旧文件,并将新文件添加到其中。更改是通过一定的修订提交的
现在更新您更新另一个工作副本(您现在所处的步骤)
svn表示,它已将工作副本更新为某个版本,并删除了一个文件,添加了另一个文件,在重命名的情况下,它是同一个文件,但现在有了另一个名称
您不必担心丢失任何内容,甚至可以从第二台pc上删除工作副本(使用文件系统而不是svn delete!!!)并再次签出。这将产生同样的效果
如果您仍然担心,只需将另一份工作副本并排压缩,然后执行svn更新
,看看会发生什么