【问题标题】:git merge branch of branch to mastergit将分支的分支合并到master
【发布时间】:2016-04-30 15:33:36
【问题描述】:

几个月以来,我们一直在使用 git 进行开发,而且我们都是 git 新手。现在我们正在一个分支中开发一些功能,其中一些事情非常错误——来自另一个分支而不是主分支的错误合并、变基、不正确的还原等等。现在我不想尝试恢复分支,因为它太乱了。

我现在的问题是:是否可以从这个分支创建一个分支(在它被搞砸之前)继续开发,然后将(分支的)分支合并到 master?这是一个好主意还是会导致任何(更多)问题?以我目前对 git 的了解,应该没问题。

【问题讨论】:

    标签: git merge git-branch branching-and-merging


    【解决方案1】:

    我现在的问题是:是否可以从这个分支创建一个分支(在它被搞砸之前)

    你可以很容易地做到这一点:

    git checkout -b <new branch> <SHA-1>
    

    现在您将有一个新的分支“开始”作为给定的 SHA-1 作为您所有工作的基础。

    继续开发,然后将(分支的)分支合并到master..

    从那时起,您在您的分支上工作,您可以随心所欲地使用它。

    【讨论】:

    • 我有点不清楚,我已经从特定的 SHA-1 和创建了一个分支。但是谢谢你的回答。我有点犹豫,因为几天前我们因为不正确的合并和变基而丢失了一些提交。
    • 您可能看不到日志中的提交,但您没有丢失它们,它们仍然存储在 git 中(假设在此期间没有运行 gc)
    【解决方案2】:

    您始终可以制作整个 repo 的本地副本,并在尝试进行可怕合并的地方进行“测试运行”。如果你把它弄乱了,就把测试副本报废,然后再试一次,最坏的情况。但是 100% 的时间,“可怕的”合并结果比我想象的要容易得多。 Linus 让 git 变得非常简单。

    不过,在一天结束的时候,您可以合并,然后一开始不处理所有内容。然后检查 git status 和 diffs 并确保它是你所期望的。如果是这样,那么运行它。如果您错过了什么,您可以随时回滚。

    【讨论】:

      猜你喜欢
      • 2016-09-20
      • 1970-01-01
      • 2013-01-14
      • 1970-01-01
      • 2020-07-16
      • 1970-01-01
      • 2021-06-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多