当前位置:  开发笔记 > 运维 > 正文

强制SVN checkout命令覆盖当前文件

如何解决《强制SVNcheckout命令覆盖当前文件》经验,为你挑选了4个好方法。

我正在向SVN添加现有站点.

这些文件已存在于Web服务器上,现在存储库中存在相同的副本( - 配置文件).

我想将webserver目录转换为SVN工作副本,但是当我运行时:

svn checkout http://path.to/svn/repo/httpdocs .

我收到错误:

svn:无法添加文件'':已存在同名对象

如何告诉SVN只覆盖那些内容相同的文件?



1> 小智..:

svn checkout --force svn://repo website.dir

然后

svn revert -R website.dir

将检查在website.dir中的现有文件的顶部,但不会覆盖它们.然后恢复将覆盖它们.这样您就不需要关闭站点来完成它.



2> Will Dean..:

尝试--force选项.svn help checkout给出细节.


Subversion 1.5中添加了此选项.它还添加了 - 如果你想强制更新冲突,请接受他们的全部.(正如您可能想要在构建服务器上)

3> 小智..:

这可以很容易地完成.我所做的就是将现有目录(不受版本控制)移动到临时目录.然后我检查了SVN版本到我正确的目录名,将文件从临时目录复制到SVN目录,并恢复SVN目录中的文件.如果这没有意义,下面有一个例子:

/usr/local/www

mv www temp_www
svn co http://www.yourrepo.com/therepo www
cp -pR ./temp_www/* ./www
svn revert -R ./www/*
svn update

我希望这有帮助,我不确定为什么只是一个简单的SVN更新没有改变文件?



4> Michael Pott..:

我没有1.5可用,因为我无法控制电脑.导致我出现问题的文件碰巧是lib目录中的.jar文件.以下是我为解决问题所做的工作:

rm -rf lib
svn up

这建立在Ned的答案之上.那就是:我刚刚删除了导致我出现问题的子目录而不是整个存储库.

推荐阅读
赛亚兔备_393
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有