获取eclipse CVS忘记删除目录

时间:2010-11-10 17:08:34

标签: eclipse

我正在寻找一种方法来说服Eclipse确实已经从CVS存储库永久删除了一个目录?

使用常规命令行CVS,我只需编辑目录的前父级中的CVS / Entries。使用Eclipse,我尝试从Project Explorer视图中删除目录,删除CVS / Entries中的相应行,在PE中重新创建目录,以便在更新或同步时删除它,同步而不重新创建目录,可能还有其他我忘记的事情,没有任何效果。

目录已经完全从CVS存储库中删除了,所以我不是在谈论只修剪空目录。我看到的错误是:

The server reported an error while performing the "cvs update" command.
  Project: cvs update: cannot open directory /usr/local/cvsroot/one/two/three/removed_directory: No such file or directory

我的项目包含/ usr / local / cvsroot / one / 2中的所有内容。当我导航到“三”并从那里更新时,我没有收到此错误。我只是在从项目根目录更新时才得到它。

5 个答案:

答案 0 :(得分:2)

此问题的一个(非常不完美)解决方案是,除了再次检出项目之外,还要删除Eclipse存储的CVS信息。

进入项目>下的右侧菜单团队>断开连接,并检查单选按钮“还从文件系统中删除CVS元信息”。现在您的项目未共享,并且没有更多的CVS信息。那你就得做团队>共享项目,选择以前的存储库位置,您就完成了(CVS将自行检测项目是最新的,当然不会更新或提交任何内容)。

remove cvs metadata

在Eclipse下,CVS将不再提议在cvs存储库中手动删除的文件夹提交。

请注意,在包含许多文件的大项目中,根据网络的速度,重新分享可能需要一些时间。 有时删除项目并从CVS中再次删除它可能更容易。

答案 1 :(得分:1)

我在几次不同的时间里同样地打了几个小时。我刚刚放弃并重新检查了该项目。这看起来像一个魅力

答案 2 :(得分:0)

处理CVS中的目录并不完美。创建更完整的SCM工具subversion会导致此原因和其他许多原因。

CVS可以创建目录,但无法删除它。从CVS的角度来看,要删除目录中需要删除的目录(cvs rm)。但目录仍然存在于CVS中,并且无法将其删除。 Hovewer,CVS建议通过执行“cvs up -P”来隐藏这些“已删除”/空目录的“黑客”(参见here)。

因此,对于CVS命令行,我不会弄乱父目录CVS / Entries文件,而是使用上面描述的“cvs up -P”。

答案 3 :(得分:0)

该目录将列在父目录下的CVS / Entries文件中。删除Entres文件和目录中的条目。 Eclipse应该识别该目录已被删除。

在CVS中重构目录是有问题的。由于CVS处理历史的方式,以下通常适用:

  • 移动到新位置的文件的历史记录似乎消失了。 (它位于旧址的历史中。)
  • 保留文件的历史记录,但在移动之前检出版本时文件会显示为移动。 (文件在存储库中移动,而不是在沙箱中移动。)

删除或移动存储库中的目录通常会给客户端带来问题。它有助于保留目录,只移动或删除文件。正常处理将已删除的文件移动到Attic子目录。

答案 4 :(得分:0)

在Eclipse CVS同步透视图中,您是否尝试过“覆盖和更新”选项?