Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Clearcase静态视图上最好地设置Mercurial?(设置“结帐”挂钩?)_Mercurial_Clearcase - Fatal编程技术网

如何在Clearcase静态视图上最好地设置Mercurial?(设置“结帐”挂钩?)

如何在Clearcase静态视图上最好地设置Mercurial?(设置“结帐”挂钩?),mercurial,clearcase,Mercurial,Clearcase,我想在clearcase静态视图目录中设置mercurial存储库。我的计划是从该目录中克隆,在mercurial repo中完成我所有的实际工作,然后将我的更改推回到共享的Hg/Clearcase目录 我希望听到关于如何最好地工作的一般建议,但我预见到一个特定的问题:Clearcase将文件锁定为只读,直到它们被签出。我希望它的工作方式是在推送完成之前设置mercurial钩子签出文件,如果签出不起作用,则回滚推送 我应该看看pretxncommit挂钩吗?还是拉钩?另外,我也不太清楚如何编写

我想在clearcase静态视图目录中设置mercurial存储库。我的计划是从该目录中克隆,在mercurial repo中完成我所有的实际工作,然后将我的更改推回到共享的Hg/Clearcase目录

我希望听到关于如何最好地工作的一般建议,但我预见到一个特定的问题:Clearcase将文件锁定为只读,直到它们被签出。我希望它的工作方式是在推送完成之前设置mercurial钩子签出文件,如果签出不起作用,则回滚推送

我应该看看pretxncommit挂钩吗?还是拉钩?另外,我也不太清楚如何编写实际的钩子。我知道clearcase命令,但我不确定如何构造钩子来传递变更集中每个文件的文件名


建议?

我两天前刚刚回答的问题:你能举例说明这个过程吗

我喜欢将ClearCase签出/签入步骤与DVCS工作分开:
我将在DVCS repo(直接在快照视图中创建)中根据需要解锁文件,然后更新快照视图,它将告诉我“被劫持”的文件(我可以通过cleartool更新GUI轻松签出和签入这些文件)

但是,如果您在其他地方克隆了DVCS repo,并将其推回到不是ClearCase快照视图的本地repo,那么您可以做的只是在DVCS repo的根目录下复制快照视图的
view.dat
隐藏文件。
这个简单的文件足以在ClearCase snashot视图中转换回本地回购
然后将所有文件设置为只读(在某个日期之后修改的文件除外,即您开始工作的时间),以避免ClearCase将所有文件视为被劫持。

其余部分与第一种方法类似:更新、签出/签入。

我考虑了被劫持的文件方法(即不进行任何特殊配置),虽然我认为这是一个很好的起点,但签出可能会失败的原因有很多,最好在推送成功之前知道这一点。另外,谢谢你对view.dat的关注!