无法推动新的头脑 - 看不出它们将如何创造

时间:2014-12-04 19:26:18

标签: mercurial tortoisehg

我对团队中的版本控制相当新。到目前为止,我主要使用它独奏。

我读过建议使用以下工作流程:

  

本地提交,拉主人,将主人合并到我的分支,合并我的   分支成主人,推。一周几次甚至一天

这就是我试图做的事情。然而,当我完成了我的功能,并尝试推动,乌龟hg告诉我,这将创建新的远程头。

hg help push告诉我两个选项:

  1. 首先合并:那是
  2. 使用-f:我知道不要这样做。
  3. 我认为我理解变基的概念 - 我不认为这适用于此,因为我是唯一一个在此提交树中做任何事情的人。我当然拉了。

    所以我的问题是:我该如何解决这种特殊情况?

    此外,建议在哪里学习正确的版本控制工作流程会很好。我找到的所有内容都告诉我命令是什么,但是当使用它们时,我无法找到关于的明确说明。

    我添加了项目图片。提交147是我的,我可以把它推得很好。所有其他提交也是由我做出的。

    Mercurial commit tree

1 个答案:

答案 0 :(得分:1)

hg报告" head"为每个命名的分支。在屏幕截图中,您需要推送rev 154,它是kjeld分支的负责人。这是outgoing变更集,因为您正在推动第155版,因此您必须推动155年的整个历史记录。其他人会在他们提取更改时获得该分支,并且会对kjeld的版本有所了解(请注意,由于这些数字是特定于repo的,因此很可能不会编号为154)。你会没事的,因为那个头是close-branch变更集,所以它不会出现在hg headshg branches的默认列表中。

避免当前问题的一种方法是使用bookmarks暂时记下该头代表的内容,例如issue-45big-feature-2等,只有在合并到主线开发时才会推送。

对我们来说,我们建立了一个私人"对存储/备份正在进行的服务器上的每个开发人员进行repo。预计在这些私人"私人"中有多个头,死枝和其他垃圾。回购。但是,dev repo只有一个头,必须通过构建和构建测试。


回复您对自己"私人"的评论。分支:当您按下tip时,您还会推送名为kjeld的分支。其他想要使用该代码的人必须使用它来获得开发的提示。它不会是私人的"科。