当我使用svn时,我遇到了一些问题。这是一个清单
但我想知道在上述两种情况中我应该做些什么。我怀疑在案例1中,问题与混乱的文件夹权限有关,但我不确切知道什么,以及如何解决它。我怀疑我可以对没有相应所有者/组的文件夹采取以下步骤之一:
在上述每种情况下使用svn的最佳方法是什么,以及在发生类似情况时如何成功破解锁等?
答案 0 :(得分:2)
您似乎至少有2个不同的用户正在更新相同的工作副本:
这是一个问题。你可以使用root(即sudo)进行所有svn操作 - 它不干净,但可以工作。
答案 1 :(得分:1)
你的第一个问题是文件系统权限,而不是svn问题。如果以root用户身份运行svn命令,那么很多文件和目录很可能最终归root所有。运行
chown -R desiredusername .
作为工作副本根目录中的root应该解决问题(请注意,您必须用真实的用户名替换'desiredusername')。尽量避免以root身份运行,这样可以避免很多这些问题。 :)
至于第二个问题,如果它是一个包含运行时数据的目录,就像您的Web应用程序存储的内容一样,我会怀疑您是否真的要对其进行版本控制。我打赌你没有,所以通过让svn完全忽略该目录你会得到更好的服务。你可以通过运行
来做到这一点svn propset svn:ignore imagedirectoryname .
在父目录中。再次,将实际名称替换为“imagedirectoryname”。另请注意,如果您在父目录中已经有其他被忽略的资源,则使用svn propset将覆盖它们,因此您要运行
svn propedit svn:ignore .
代替。
答案 2 :(得分:1)
您描述的是权限问题,而不是SVN问题。我建议了解Unix文件权限及其含义,例如here。
如果您的文件是由Web服务器创建的,则可能存在Apache配置为以“www-data”或其他形式运行的问题。在这种情况下,将用户(运行SVN命令)添加到Apache用于写入文件的组可能更简单。