代码之家  ›  专栏  ›  技术社区  ›  lost9123193

Git回扣2分公司订单

  •  0
  • lost9123193  · 技术社区  · 6 年前

    我有两个分支

    myBranch
    
    devBranch
    

    如果我想使用rebase从mybranch的devbranch ontop添加提交,那会是

    git checkout myBranch
    
    git rebase devBranch 
    

    我知道如果我使用git merge,它会将devbranch合并到mybranch,我只是想知道这是否也适用于rebase。

    2 回复  |  直到 6 年前
        1
  •  1
  •   rahul mishra    6 年前

    git merge git rebase 这两个命令都是为将一个分支的更改集成到另一个分支而设计的——它们只是以非常不同的方式来完成。

    git merge在 myBranch 带来 devBranhc 更改时 GIT重碱 移动整个 迈科 devBranch ,有效地将所有新的提交 德布兰克 .

    例子:

    假设初始分支历史记录如下:

    enter image description here

    合并分支 : git merge devBranch

    enter image description here

    GIT重碱 : git rebase devBranch enter image description here

        2
  •  1
  •   letthefireflieslive    6 年前

    它会的。

    您有3个选项(据我所知)来集成git分支:

    • git merge --no-ff 始终创建合并提交,保留分支提交历史记录
    • git merge 如果可能,跳过创建合并提交,这将不保留分支提交历史记录
    • git rebase 不创建合并提交,更改 myBranch 历史,保存 迈科 历史(技术上)因为它将在 devBranch 当您合并它时(虽然commit是线性的,但是当 迈科 应用于 德弗科 提交历史记录)。

    注释 :由于更改历史,请确保 迈科 不共享 . 你可能也想 push --force 后来因为这个。