我想在clearcase静态视图目录中设置一个mercurial存储库。我的计划是从该目录克隆,在mercurial repo中完成我所有的实际工作,然后将我的更改推回到共享的Hg / Clearcase目录。
我希望听到关于这可能最有效的一般建议,但我预见到一个特定的问题:Clearcase将文件锁定为只读,直到签出为止。我希望它的工作方式是在推送完成之前设置一个mercurial钩子来检查文件,如果结账不起作用则回滚推送。
我应该查看pretxncommit钩子吗?还是拉钩?另外,我也不太清楚如何编写实际的钩子。我知道clearcase命令,但我不知道如何构造钩子来传递变更集中每个文件的文件名。
建议?
答案 0 :(得分:2)
我刚才回答的问题:How to bridge git to ClearCase?可以让您了解这个过程。
我喜欢将ClearCase结帐/签入步骤与DVCS工作分开:
我会在DVCS仓库中需要解锁文件(在快照视图中直接 ),然后更新快照视图,这将告诉我“被劫持”的文件(我可以很容易结账并通过cleartool更新GUI进行检查。
但是如果您在其他地方克隆了DVCS repo,并将其推回到不是ClearCase快照视图的本地仓库,您可以做的只是复制快照视图的view.dat
隐藏文件在DVCS回购的根目录
这个简单的文件足以在ClearCase snashot视图中转换回本地仓库!
然后,您将所有文件设置为只读(除了在特定日期之后修改的文件,即您开始工作的时间),以避免ClearCase将所有文件视为已被劫持。
其余类似于第一种方法:更新,结账/签到。