代码之家  ›  专栏  ›  技术社区  ›  mpen

需要帮助修复:“不是工作拷贝目录”

svn
  •  2
  • mpen  · 技术社区  · 14 年前

    我有一个文件夹, plugins/south 它被签入了我的存储库。然后我需要升级它,所以我删除了文件夹并放了一个新的。现在我无法提交更改。

    事后看来,我可能应该让SVN删除它,但现在为时已晚。

    mark@ubuntu:~/myproject$ svn add plugins/south
    svn: Working copy 'plugins' locked
    svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for details)
    mark@ubuntu:~/myproject$ svn cleanup
    svn: 'plugins/south' is not a working copy directory
    

    我该怎么解决?

    我想也许我可以删除回购协议中的版本,然后在。。。

    mark@ubuntu:~/myproject$ svn delete --keep-local plugins/south
    svn: Working copy 'plugins' locked
    svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for details)
    

    但它也不让我这么做。

    4 回复  |  直到 14 年前
        1
  •  2
  •   kwantam    14 年前

    你也可以试试

    svn revert plugins/south
    

    要恢复旧版本,请根据需要进行更改。

    或者,

    cd /tmp
    svn co <stuff>/plugins
    cd -
    mv plugins plugins-old
    mv /tmp/plugins .
    

    或道德上的对等。

        2
  •  4
  •   richo    14 年前

    这个工作副本现在不是。。

    在imo中(这可能不正确/但应该有效)最好的办法是签出其他地方的工作副本,然后应用此集合中的更改,然后提交。

        3
  •  2
  •   JOTN    14 年前

    问题是您删除了subversion使用的整个目录以及“.svn”目录。你应该做的方法是“svn delete”目录,提交从本地目录中删除它,创建新目录,然后“svn add”新目录。

    若要清理现有目录,请将新目录移动到另一个位置,执行“svn update”以恢复原始目录,svn将其删除,提交,将新目录移回原位,svn将其添加。

        4
  •  1
  •   MKroehnert    14 年前

    您可以尝试更新已删除的目录,然后使用 svn rm 之后。

    但在执行此操作之前,应移动新目录以避免妨碍。