我怎样才能阻止mercurial推送subpos



在我的存储库中,我为正在使用的模块添加了几个子存储库。我总是把这些子职位当作"只拉"。我不打算对它们进行任何更改,但希望保留在发布新版本时轻松进行新更改的能力。

当我推送主存储库时,Mercurial会尝试推送子存储库。有什么设置可以防止这种情况发生吗?

根据您要寻找的行为,您可以做一些事情。

你真的在子博客中编辑和提交了吗?如果是这样的话,您应该创建一个单独的供应商分支,比如repo,将您的更改与上游("他们")的更改合并,并让您的子报表指向它。也许是这样的:

repos
  main
    subrepo
    .hgsub # contains: "subrepo=../theirproject"
  theirproject  # clone of remote, upstream repo

其想法是,子Po条目不直接指向仅拉动的上游回购,而是指向您自己的一个回购,在那里您将您的更改与"他们的"合并

另一个选项是停止在子报表中进行更改。如果没有更改,也没有提交,那么push将直接传递该repo。如果您切换到该工作模式,您可以在hgrc文件的[ui]部分设置commitsubrepos = false,以避免在该repo中意外提交。

底线是,如果你在那里改变事情,那么你需要承诺(为了安全!),如果你承诺了,那么如果父母被推,他们就会被推,所以只要控制好他们被推的地方,你就可以去了。

取决于您使用的mercurial客户端。我使用了turtoisehg,我发现右键单击文件夹并选择turtoisegh>>中的文件只需要忘记即可。选择文件,您就不需要再麻烦了。

最新更新