很抱歉的许多部分的问题,但我有困难的时候理解意法使用水银补丁排队到位桶,而谷歌是没有帮助很大。 我的希望是一个答案描述一些MQ概念将涵盖很多的问题一次。 我已阅读http://ches.nausicaamedia.com/articles/technogeekery/using-mercurial-queues-and-bitbucket-org ,但它似乎是过时的和不完整的。 我的总体规划是允许从用户的众多提交的变化众多,而不必将它们提交到一个分支。 这些补丁代表可选修改玩家正在为游戏加强和扩大游戏。 我希望用户能够樱桃挑选任意补丁或补丁集与和审查玩的。 当我得到的汞是如何工作的一个坚实的理解,我打算写一些PHP脚本或东西拉一个分支加上选定的一组补丁到工作区的玩家能够运行HTML5代码审查。
我已经能够:
- 建立在SourceForge上的存储库http://sourceforge.net/p/iotabuildit/wiki/Home ,在那里我本来以为我会被主办的一切。
- 提交我的所有代码SourceForge的存储库。
- 要知道,到位桶可能是一个更好的地方来举办这个(感谢推荐DVCS机制举办许多独立的补丁给我的要求)。
- 导入我直接从SourceForge的Mercurial库代码放入到位桶http://bitbucket.org/bluemonkmn/iotabuildit/
- 添加到位桶URI来TortoiseHg这样我就可以使用同一个本地仓库与在网上资料库。
- 启用TortoiseHg MQ
- QCommit改变成我的本地库的补丁队列。
- 创建到位桶补丁队列库http://bitbucket.org/bluemonkmn/iotabuilditmq/ 。
- 克隆补丁队列存储库到本地存储库
- 从原来的本地存储库中的补丁文件复制到补丁队列库(虽然我不知道是否有更好的方法来做到这一点)。
- 通过做推前打开--mq开关推补丁到位桶补丁队列存储库。
- 见到位桶中列出的修补。
- 克隆到位桶补丁队列存储库的全新副本,看到本地资源库中可用的补丁(连同树的其余部分)。
我想不通 ,或对问题的事情是:
- 我是否需要保留两个主存储库和本地补丁库?
- 可以/我应该使用SourceForge上的修补程序存储库? (如果可以,我可能会放弃到位桶)。
- SourceForge上是否支持MQ? (SourceForge上会不断给我一份有补丁坐在它像我的到位桶看见克隆库?)
- 可以/我应该使用到位桶补丁库的原始资料库? (如果可以,我可能会放弃在SourceForge上的存储库。)
- 我是否需要使用一个存储库上的代码用于补丁和工作时,其他的代码预期工作,则必须正式承诺?
- 什么是补丁推入一个网上信息库的最佳方式?
- 难道我做了局部小片库中的QCommit或QNEW,然后用--mq开关推?
- 在期间我的过程中的一些观点,我犯了一系列和为.diff文件的补丁库,这似乎有点偏离。 这已玷污了我的MQ和到位桶是如何工作的看法?
- 我应该永远是犯为.diff上到位桶或SourceForge的文件到源代码控制? (在某些情况下,QCommit似乎想提交.hgignore,系列,并为.diff文件)
- 是用户应该能够看到挂起的应用和/或不适用的修补程序存储库补丁克隆之后?
- 有什么办法来拉在本地或远程仓库中的补丁不克隆呢?
- 有一次,我删除了我的本地库补丁,我无法弄清楚如何获得它从远程仓库后面,而无需重新克隆的,也不是我能想出如何提交删除补丁。
- 我无法补丁从我原来的仓库转移到修补程序存储库,而无需手动复制补丁文件。
- 我是不是很快就要碰到我将不能够挑选出从队列一些补丁没有得到其他的补丁在它前面的在同一个队列哪里出了问题? 我很担心,有些玩家会忽略使在一个单独的分支/队列/无论将它们放在行与来自相同(或者甚至其他)用户不相关的更改他们的补丁。 在处理潜在问题的任何建议都也表示赞赏。
- 是否有可能(允许)的任意用户提交一个补丁,而无需显式地添加每个用户到位桶有对修补程序存储库的权限?
- 它是明智的,合理的将所有(潜在的数百个?)的用户共享补丁队列库? 这将是理想的(而不是每个用户创建他们自己的补丁库,如果这甚至有可能),因为我不希望这种情况是复杂的用户,并给予我已理解水银和到位桶的时间量做的,我惧怕任何并发症会关闭大量的用户/玩家。
正如你或许可以告诉,我有点失去了,不知道该问什么问题。 我怀疑,答案是比这些问题更简单,但不知道这个问题,很难提出正确的问题。 希望有答案描述补丁队列库的性质将清除所有这一切为我说话。