【问题标题】:How can I add bunch in multiple folders to ClearCase source control?如何将多个文件夹中的一堆添加到 ClearCase 源代码控制?
【发布时间】:2012-11-19 20:33:24
【问题描述】:

我正在开发一个 C# 项目,它有一个包含 100 多个项目和数千个文件夹和文件的解决方案,我在不同文件夹中的该解决方案的不同项目中添加了一些新文件。

现在我想将它们添加到源代码管理并签入,但我不知道如何将它们作为一组进行跟踪。
到目前为止,我必须一一追踪才能添加它们!

注意:这些文件夹中有数百个不应该签入的私人文件。
我曾经使用 Mercurial,因此我能够看到修改后的文件和新文件,并且能够创建忽略列表,因此我能够选择我想要添加到存储库的文件并忽略我所做的那些不想添加,但我在 ClearCase 中找不到类似的东西。

我发现一些线程解释了如何将文件添加为一堆,但仅当您想要添加文件夹的全部内容时。
我不想将这些文件夹中的所有文件都添加到源代码管理中,只应添加选定的文件,并且我想要明确的情况来忽略其他文件。 (正如我提到的,我知道如何通过 TortoiseHG 工作台在 mercurial 中做到这一点,但我找不到 ClearCase 的类似功能!)

如何通过 CleareCase 执行此操作?

【问题讨论】:

    标签: clearcase


    【解决方案1】:

    好的,clearcase 似乎没有显示(跟踪)不在其存储库中的文件的功能,除非您想将它们全部导入(在我的情况下这是不希望的操作)。它可能有一些东西但如果没有,我也不会感到惊讶,在过去的 2 年里,我必须使用这个……我一直想知道这个 .. 是如何幸存至今的,我团队中的每个人都讨厌这个软件,但我们是无权强制公司切换到另一个源代码控制。

    这就是我修复(调整)我的问题的方式,我在备份文件夹中创建了项目的副本,然后我创建了一个本地 Mercurial 存储库并将整个内容推送到存储库中,除了我不想要的内容(通过创建忽略列表),然后我删除除 view.dat 之外的项目文件夹的内容,然后通过 Mercurial 更新它。因此,我获得了所需的全部内容,然后使用了 clearfsimport,因此我签入了所需的文件,然后将备份副本中的内容复制回项目文件夹中。

    感谢clearcase,我将从现在开始寻找新工作,我已经厌倦了处理这个问题。

    【讨论】:

    • 我已编辑我的答案以反映您的结论。我分享您对 ClearCase 的(强烈)感觉。值得一提的是,在管理 ClearCase 多年之后,我目前的任务是帮助团队从 ClearCase 过渡到其他 VCS ;)
    • :) IBM 有另一个名为 Rational Synergy 的“...
    【解决方案2】:

    首先,ClearCase 没有 .hgignore 或 .gitignore。
    二、添加大量文件的常用方式是clearfsimport。

    这样您就可以复制您的项目,并清理不需要的文件,clearfsimport 其余文件(如this thread 中所述)。
    见“How can I use ClearCase to “add to source control …” recursively?”


    OP 选择的解决方案符合在 clearfs 将源文件导入 ClearCase 之前必须执行的强制清理:

    • 在现有源文件中创建本地(DVCS:Git 或 Mercurial)存储库
    • 使用要忽略的文件构建 .gitignore 或 .hgignore
    • 添加所有内容
    • 提交
    • 在别处克隆该存储库,然后您就有了可用于 clearfsimport 的“干净”源。

    一旦您在 ClearCase 中获得了您的源代码,使用该工具的一种可能方法是:

    • 创建 ClearCase 快照视图
    • 在其中创建一个 Git 或 Hg 存储库(如在“How to bridge git to ClearCase?”中),像上面一样添加和克隆
    • 使用您最喜欢的 DVCS(在与快照视图不同的工作树中)
    • 只需将代码的稳定状态提交回 ClearCase 中,只需 clearfsimport -mirror 将这些文件返回到 ClearCase 中即可。

    【讨论】:

    • 注意:忽略文件的唯一方法是在 Eclipse 环境 (publib.boulder.ibm.com/infocenter/cchelp/v7r1m0/…) 中的 CCRC 视图中,这不是这里的情况:非 java 项目,完整的 ClearCase 安装。
    • 我看过那个帖子,那个解决方案对我不起作用。正如我所提到的,该项目非常庞大,因此清除不需要的文件比追踪想要的文件需要更多的时间(可能需要数天),而且这是一个容易出错的过程。有一个忽略列表会很好,但不是那么重要,如果我得到不在存储库中的文件列表,我可以处理这个问题,但你的意思是 clearecase 也无法跟踪添加的文件?
    • @FredJand 那么您是否愿意添加所有内容,然后删除多余的内容?不管怎样,这就是你的 ClearCase。 Clearfsimport 就是它。而且我不确定“ClearCase 也无法跟踪添加的文件”是什么意思。 ClearCase 将检测非版本控制文件(因为它们在您的视图中是私有的)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-09-13
    • 2021-10-18
    • 2011-09-26
    • 1970-01-01
    • 1970-01-01
    • 2018-06-25
    • 2020-01-28
    相关资源
    最近更新 更多