【问题标题】:Removing directory from SVN without deleting it from server从 SVN 中删除目录而不从服务器中删除它
【发布时间】:2009-08-26 13:27:06
【问题描述】:

我目前正在维护一个从其他人那里继承的项目,而 SVN 存储库有点乱。我已经完成并清理了大部分内容,但仓库中有一个文件夹,管理员可以通过应用程序中的 Web 表单将文件上传到该文件夹​​。目前此文件夹位于 SVN 中,并包含多个 SVN 中的图像。作为 SVN 存储库应该用于我们的代码,如果可能的话,我希望将客户资产排除在外。

但是,我似乎无法找到一种方法从本地 SVN 中删除目录,然后在稍后执行 svn up 时将其从服务器上删除。我尝试在 tortoisesvn 中删除和忽略,但目录仍然从服务器上删除。

SVN 这样做是完全有道理的,因为它希望服务器上的副本与 repo 中的副本相匹配。而且我不反对只是将目录重命名,进行更新,然后将其重命名,因为这很容易。我只是想知道是否有人真的知道这样做的任何方式?

【问题讨论】:

  • 我实际上正在处理本地副本并尝试在本地删除、提交它,然后使用常规svn up 更新生产服务器。但是同样的问题出现在你描述的情况下,我尝试在服务器上用svn delete删除然后提交。
  • 是的,我在写完评论后才明白这一点。在我编辑的答案中查看我的建议。

标签: svn tortoisesvn


【解决方案1】:

在 Subversion 中无法做到这一点。您可以做的是在该目录中手动创建一个文件,然后当 Subversion 尝试删除它时,它会失败。

【讨论】:

    【解决方案2】:

    您可以使用sparse checkouts。使用此功能,您可以选择要签出的目录。客户端会记住您不想更新的目录,并且既不获取更新也不为此文件夹创建结帐。这需要在每个工作副本中完成。

    [edit]好的,抱歉,现在再次阅读此内容后,我有点困惑。您想删除用于结帐开发人员工作副本的文件夹,但将其保留在 Web 服务器的工作副本中?对于服务器和开发人员的签出使用不同的存储库或不同的基本目录怎么样?比如:

    • 开发/
      • 主干/分支/标签/
        • src/
    • 分辨率/
      • 图像/ [/编辑]

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-13
      • 1970-01-01
      • 1970-01-01
      • 2017-12-11
      • 2015-01-20
      • 1970-01-01
      相关资源
      最近更新 更多