【问题标题】:svn conflict between cmd line and Subversive?cmd行和Subversive之间的svn冲突?
【发布时间】:2011-09-07 20:42:42
【问题描述】:

我是 svn 的一个新手,尽管反复尝试,但我仍然无法解决我在我的环境中似乎遇到的问题。

我正在使用 svn 1.6.15,我有 Eclipse 3.5.2,在 CentOS 5.5 上实现了 Subversive SVN 连接器 2.2.1 和 SVNKit 1.3.0。

当我第一次开始使用 svn 时,我从 cmd 行中检查了一些东西,现在是我所有项目的父目录。当我开始使用 Eclipse/Subversive 时,我以为我已经摆脱了所有这些东西,但是其中一个原始项目的条目仍然保留在父目录的 .svn/entries 文件中。如果我从父目录中的 cmd 行执行 svn 列表(不带参数),则会显示该旧项目的单个源文件。如果我做一个 svn 列表并指定存储库的 URL,那么我的所有项目都会列出(但不是那个旧的源文件)。

如果我从父目录中的 cmd 行执行 svn status -u,我的所有项目都以状态列出? (不受源代码控制)虽然在 Eclipse 中项目已连接到存储库,但我可以查看历史记录并进行提交等。另一个区别是我可以在 Eclipse 下创建新的 SVN 项目,但是当我尝试从命令中执行此操作时行,新项目是在旧的、不正确删除的路径下创建的,而不是在实际仍然存在的路径下。

可以看到父目录的.svn目录下的entry文件的区别,显示:

svn://our_SVN_url/svn/ifx/removed_directory
svn://our_SVN_url/svn/ifx

我在 Eclipse 中创建的项目之一的条目文件显示在哪里:

svn://our_SVN_url/svn/ifx/project_directory
svn://our_SVN_url/svn

我尝试了各种 svn 命令来清理、更新和删除旧目录,但提交总是由于某种原因而失败。旧的、未正确删除的项目的目录结构仍保留在父目录中。我厌倦了将旧项目的源文件重新提交到存储库(希望我可以随后删除该项目)但是由于 svn 抱怨找不到文件而失败。

对于冗长的描述感到抱歉,但我不确定我是否理解所发生的事情足以提供更简洁的描述。

提前感谢任何对我如何停止在这个问题上追逐我的尾巴提出建议的人。

【问题讨论】:

    标签: svn


    【解决方案1】:

    我怀疑 svn 的命令行版本与 Eclipse 插件版本不同。如果两者使用不同的svn规范,那么在一个下管理的项目就不能从另一个管理。

    您目前是否已签入所有代码?如果是这样,最简单的解决方法是删除所有本地代码,然后重新结帐。如果您仍需要签入某些文件,但这些签入当前失败,请将您的本地代码移动到另一个位置,然后重新签出。替换任何需要更新的单个文件,然后签入。(请注意,您不想移动整个文件夹,因为不应复制 .svn 文件夹。)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-27
      • 2012-03-06
      • 2011-05-02
      • 2012-11-25
      • 2013-10-27
      • 2014-03-02
      相关资源
      最近更新 更多