我无法弄清楚为什么我从SVN收到这条消息.SVN告诉我某个文件存在冲突.所以我更新了文件......
Daves-MacBook-Pro:didoclient davea$ svn up src/test/java/org/myco/myproject/dao/AccessCodeDAOTest.javaUpdating 'src/test/java/org/myco/myproject/dao/AccessCodeDAOTest.java':
At revision 27.
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试并立即提交后,我收到的消息是该文件仍然存在冲突...
Daves-MacBook-Pro:didoclient davea$ svn commit -m "… my message ..."
svn: E155015: Commit failed (details follow):
svn: E155015: Aborting commit: '/Users/davea/Dropbox/workspace/didoclient/src/test/java/org/myco/myproject/dao/AccessCodeDAOTest.java' remains in conflict
Run Code Online (Sandbox Code Playgroud)
这是怎么回事?我如何提交我的文件? - 戴夫
有人对此文件进行了更改,这些更改与您的更改相冲突.这些可能包括对相同代码行的更改.在大多数情况下(如果不是全部),SVN无法合并更改,因为它们触及代码的相同部分.在将任何文件提交到存储库之前,您必须至少将冲突标记为已解决,通常是通过修复它们.
您可以将文件与其他地方的更改一起复制,然后从存储库中获取最新版本(您可以通过删除本地副本并svn up再次运行来执行此操作),然后从您的存储库中修改刚刚获得的文件,并将更改添加到存储库中再次.
有一些工具可能在这个过程中有所帮助,例如tortoise-mergeWindows平台上的TortoiseSVN,但所使用的技术总是某种方式将两个更改(已经在repo上的更改和您的更改)应用于原始文件.