我有一个文件,我想添加到使用cleartool
Linux上的cleartool
。 我已经按照这个IBM文档,我试过这个:
cleartool mkelem testScript.sh
我得到一个错误:无法修改目录“。” 因为它没有被检出。 我也想知道如何结帐/签入文件或目录和设置活动。
您需要先检出父文件夹。
cd /path/to/file/ cleartool mkact newfile cleartool checkout -c "add file" . cleartool mkelem testScript.sh cleartool checkin -nc
如果您在UCM视图中, cleartool mkact
可以工作。
它会创建并设置一个新的活动,它将记录您将修改的文件和文件夹。
在这里,新的活动newFile将记录父文件夹的新版本,以及文件的版本0和1。
你应该为单独的问题创建单独的问题…
回到原来的 – 它没有工作的原因是,正如VonC指出的,你没有签出文件的父母。 请记住,当你运行“cleartool mkelem”时,你将要修改父目录的内容 (在这种情况下),在你正在创建的元素上添加一个新的“指针”。 和其他一切清晰的一样,当你想修改一个元素的内容时,你必须首先检查它。
ClearCase最大的优势之一(也是最难缠的)是IMO的一个“元素”概念。 “一切”的行为与一个元素相似。 对“元素”(文件或目录)进行任何更改意味着您必须首先检查以进行更改。
在一个文件的情况下,这很容易掌握 – 你只是在一个文件中编辑行。 对于一个目录来说,这几乎是一样简单 – 你可以把一个目录看作只是指向数据blob的指针列表。 我们使blob的名称方便一些,我们可以记住(如foo.java或myapplication.cc或README.md)。 但是,我们也可以通过重命名文件来更改指针的名称(即使它指向相同的数据块)。 我们可以通过使用“rmname”来删除指向blob的指针,而不会影响blob本身。 这基本上是“rmname”所做的。
在ClearCases的情况下,mkelem命令有点特别 – 它创建初始数据块,并在当前目录中添加一个指向该数据块的指针(类型同时执行2件事)。