2011-02-05 42 views
1

我和我的团队中的许多开发人员经常遇到mercurial clone中默认推/拉位置行为的问题。有没有办法将系统关闭? I.E.,我从〜/ abc/123克隆,然后输入“hg push”,而不是推到那个目录,我得到一些类似的错误信息,比如,“对不起,戴夫,我做不到。”Mercurial HGRC Force Ignore Default

我仍然想要将命名的位置添加到特定回购的hgrc中,我只想将默认关闭。

+0

你进入什么样的麻烦? – 2011-02-05 18:30:12

+0

人们无意中推到错误的回购。 – Jonathan 2011-02-05 19:34:58

回答

2

一个解决方案是让人们从他们无法推送的存储库克隆。您可以使用allow_push指令在仓库中的.hg/hgrc文件,以推动限制你的团队领导,发布经理,等等。这是一种很常见的工作流程,当流动的变化,如:

  • 开发商:克隆从共享
  • 开发商:在本地工作
  • 开发商:推READY_FOR_REVIEW
  • 铅:从READY_FOR_REVIEW推到共享

开发人员仍然可以推/拉彼此之间,但'共享'得到更多的监督。

或者,你可以强制人们使用克隆后挂机,做一样的东西:

[hooks] 
post-clone.stopit = perl -ine 'print unless /default = /' 

,如果你对他们工作的系统的控制,你可以把在/etc/mercurial/hgrc,但共享回购中的访问控制比在每个人的系统上设置一些东西容易得多。