1

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

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

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

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

我如何通过 CleareCase 执行此操作?

4

2 回答 2

1

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

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

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

于 2012-11-19T22:56:56.763 回答
0

首先,没有.hgignore或没有.gitignoreClearCase。
其次,添加大量文件的常用方法是clearfsimport.

因此,您可以复制您的项目,并清除不需要的文件,clearfsimport其余的(如该线程中所述)。
请参阅“如何使用 ClearCase 以递归方式“添加到源代码控制……”


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

  • 在现有源文件中创建本地(DVCS:Git 或 Mercurial)存储库
  • 构建一个.gitignore.hgignore与要忽略的文件
  • 添加所有内容
  • 犯罪
  • 在其他地方克隆那个 repo,你就有了 clearfsimport 的“干净”源。

在 ClearCase 中获得源代码后,一种可能的方式来解决该工具的问题是:

  • 创建 ClearCase 快照视图
  • 在其中创建一个 Git 或 Hg 存储库(如“如何将 git 桥接到 ClearCase? ”中),像上面一样添加和克隆
  • 使用您最喜欢的 DVCS(在与快照视图不同的工作树中)
  • 只需在 ClearCase 中clearfsimport -mirror备份那些文件,只需将代码的稳定状态提交回 ClearCase。
于 2012-11-19T20:58:34.103 回答