0

我一直在尝试将我的 dev 分支合并到 master 分支,但这是我第一次,我想我完全误解了术语。

首先,我尝试了合并:

我试图将 dev 合并到 master 中,但没有成功。在解决冲突时,我使用“我们的”,认为这意味着将“我的”开发分支合并到主分支中,但是当事情发生变化时,该站点看起来与开发分支结帐时的样子不同。

然后我尝试了一个变基:

然后我相当鲁莽地尝试了一个变基,认为这会迫使主分支与开发分支相同,但同样,可能使用了错误的选项来解决冲突,因为站点看起来与初始合并后的相同。

此时,我可以强制master分支与dev分支相同吗?

如果我切换回 dev 分支,站点看起来是正确的 - 如何将更改合并到 master 分支中,以便站点看起来与签出 dev 分支时相同?

或者在这一点上,有没有办法强制master与dev相同?

抱歉,如果这很容易,我发现 git 中的术语令人困惑,并且似乎不理解我读过的答案/教程 - 任何帮助将不胜感激。

顺便说一句,我正在使用 Mac Git 客户端 Tower。

干杯

4

2 回答 2

0

如果您想“强制主人与开发者相同”,则始终有效的程序是:

  • 删除主分支 ( git checkout dev; git branch -D master)
  • git branch master; git checkout master从 dev ( )重新创建 master 分支

...现在这两个分支是相同的(相同HEAD,因此历史相同)。

您的问题很可能是您在拙劣的合并后没有重置。理论上,无论是变基(具有共同祖先)还是合并都会产生一个分支,该分支集成来自两个分支的更改。如果合并没有按您希望的那样进行,请重置回之前并重试。在您满意之前不要提交结果!

于 2012-06-21T21:26:51.497 回答
0

我不知道 Mac 客户端,但我一直在使用 Windows/linux 的 git 客户端和 eclipse 的插件,它们都有强制更新的选项。

如果您使用图形界面进行推送,应该会出现一个选项,否则您肯定需要在命令行中添加选项。

但是在进行严厉的强制更新之前,您是否尝试过:

-提交您的更改

- 从主分支拉取

- 使用合并工具,在 Eclipse 中,您还可以比较来自其他上游的分支。解决冲突后,再次添加所有文件git add .

-再次提交!

- 将您的分支推送到主分支

希望了解Tower的人可以帮助您更多!

于 2012-06-21T21:30:02.873 回答