我正在使用subversion,因此我可以有两个签出,一个用于测试以确保一切正常,另一个用于公共实时站点。我在测试网站上做了一些更改,但也对wordpress安装进行了一些更新。现在我无法在我的实时网站上提交更改。
[phil@sessions public_html]$ svn commit -m "this time, it's personal"
svn: Commit failed (details follow):
svn: Working copy
'/usr/local/apache/sites/nextadvisor_admin/blog/wp-content/plugins' is
missing or not locked
所以我......
[phil@sessions public_html]$svn rm blog/wp-content/plugins --force
[phil@sessions public_html]$svn rm blog/wp-content/plugins --force
[phil@sessions public_html]$svn add blog/wp-content/plugins --force
并重新添加了所有文件,然后我
[phil@sessions public_html]$ svn commit -m "this time really"
Sending blog/.htaccess
Replacing blog/wp-content
svn: Commit failed (details follow):
svn: Out of date: '/trunk/blog/wp-content/plugins' in transaction '186-1'
好的,所以当我在网上看到它告诉我做svn更新但我曾尝试过一次,它只是删除了我所有的本地更改,因为我的测试结帐中不存在“blog /”文件夹。
我的问题是,如何在不丢失本地修改的情况下使此提交工作?
更新
当我运行svnupdate时,它会告诉我:
svn:存储库中不存在工作副本路径'blog / wp-content / plugins'
答案 0 :(得分:4)
将本地修改的文件保存为副本。
执行svn update
将更改的文件复制回“svn update
d”版本
执行提交。
答案 1 :(得分:1)
如果事情已经过时,您首先必须先执行svn update
才能提交。 svn update不会覆盖任何本地更改的文件。虽然你声称是这种情况,但事实并非如此,因为颠覆不会这样做。
但是,您的工作流程总是会导致问题,因为您总是会反对颠覆设计的方式。每当你发现自己在正常的事件过程中使用--force标志时,这表明你没有使用该工具,而是在与工具作斗争。
对于你想要做的事情,你最好创建一个分支并在分支上做你的开发工作。然后,当您准备好上线时,将dev分支合并到主干上并更新您的实时结账。
此外,您永远不应该在实际网站上进行更改。这就是您的测试网站的用途。实时网站应被视为只读结帐。