【问题标题】:SVN Externals unexpected state issueSVN Externals 意外状态问题
【发布时间】:2018-01-19 21:29:11
【问题描述】:

我正在尝试SVN External,我想做的是有一个外部文件夹并将库从那里复制到我的 Lib 文件夹中。

我去了 SVN Externals,在那里添加了 lib 文件夹和 svn 的路径 我检查了我的项目并收到以下错误

【问题讨论】:

  • svn:externalslib 文件夹的定义是什么样的?
  • 路径:lib URL:svn://mysvn/trunk/External/log4net 而我的lib 已提交给svn。对吗?
  • 它应该类似于:svn://mysvn/trunk/External/log4net log4net,遵循URL WC_FOLDER 约定。出于兴趣,尝试使用 TortoiseSVN 的存储库浏览器浏览到 svn://mysvn/trunk/External/log4net,并尝试暂时将其签出到某个地方。
  • 将您的lib 设置为svn://mysvn/trunk/External/log4net dll 外部,以便该URL 的内容将在您的结帐时放置在lib\dll 中。
  • 三个想法: 1. 不要将二进制文件签入源代码管理。 2. 不要使用 svn:externals 作为一个糟糕的依赖管理解决方案。 3. 阅读有关 nuget 的信息。我知道听起来老套是不可能的——但这条路会让你(或你的继任者)伤心。

标签: svn tortoisesvn


【解决方案1】:

根据我的经验,某些情况下使用svn:externals 包含的文件夹或文件会处于the item has a Switched URL relative to the parent 状态。 这很可能是您的问题的原因。您应该能够使用svn status 命令、状态“S”或TortoiseSVN Check For Modifications、状态normal (s) 来发现此类元素。

解决此问题的最简单方法是从 TortoiseSVN Check For Modifications 窗口中项目的上下文菜单中选择操作 Switch back to parent。此操作可能会导致从工作副本中删除文件或文件夹,后续更新将从存储库中获取新副本。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多