Git 如何重新设置分支的基址?

Git 如何重新设置分支的基址?,git,Git,最初,我的本地主分支与origin/master相同。设想如下: 本来 船长:a->b 产地/主产地:a->b 原点/主控多提交一次 船长:a->b 原点/主控:a->b->c 再提交一次 母版:a->b->d 原点/主控:a->b->c 来自master的新分支 母版:a->b->d 新牧场:a->b->d->e 原点/主控:a->b->c 我尝试将主分支重新设置为origin/master,我希望新分支的日志将是a->b->c->d->e。但是,新分支的日志仍然是a->b->d->e,这是为

最初,我的本地主分支与origin/master相同。设想如下:

  • 本来

    船长:a->b

    产地/主产地:a->b

  • 原点/主控多提交一次

    船长:a->b

    原点/主控:a->b->c

  • 再提交一次

    母版:a->b->d

    原点/主控:a->b->c

  • 来自master的新分支

    母版:a->b->d

    新牧场:a->b->d->e

    原点/主控:a->b->c

  • 我尝试将主分支重新设置为origin/master,我希望新分支的日志将是a->b->c->d->e。但是,新分支的日志仍然是a->b->d->e,这是为什么?

    我会怎么做:

    • 将本地主机倒带到最后一个非发散提交b:
      git签出主机;git重置b
    • 拉远程主机:
      git拉原始主机
      ;这将拉入c
    • 使用
      git merge
      git cherry pick
      将提交d和e放到主控上,解决与提交c的任何冲突

    通常,建议避免直接在主分支上工作。使用功能分支,定期对其执行git pull--rebase,以与master保持同步,并且只合并到新拉的master

    你能写下你在发布的分支状态之间/之后发出的命令吗?这样我们就可以看到你哪里理解错了?除此之外:您确定要仅针对
    原点/母版
    重新设置
    母版
    的基础吗?newbranch是怎么回事?您可能需要将
    rebase--on
    重新设置为该值。(对于仅一次提交,9000建议的重设通常更快。)