Command List

  1. 查看分支:git branch

  2. 创建+切换分支:git checkout -b (常用) 等价于:

    1. 创建分支:git branch
    2. 切换分支:git checkout
  3. 合并某分支到当前分支:git merge

    • 用于合并指定分支到当前分支
    • --no-ff 参数用于禁用 Fast forward 方式的 merge

      • 禁用 Fast forward 的优点:

        Git 就会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息。

        $ git merge --no-ff -m "merge with no-ff" dev
        Merge made by the 'recursive' strategy.
        readme.txt |    1 +
        1 file changed, 1 insertion(+)
        
      • 传统的 Fast forward 会在 merge 到 master 并删除分支后,会丢掉该分支信息

      • 上面两种情况分别如下图所示:

      • 终止合并
         git merge --abort
        
  4. 删除分支

    • 开发一个新feature,最好新建一个分支;
    • 删除一个分支时,不能在这个分支上,要移动到别的分支再删除
       git branch -d <name>
      
    • 如果要丢弃一个没有被合并过的分支,可以强行删除

       git branch -D <name>
      
    • 删除远程仓库的分支

         git push --delete origin <name>
      

创建合并分支示意图

  1. 初始状态,HEAD 指向的就是当前分支。

  2. 创建新分支(dev)并切换到新分支

  3. 在新分支上工作

  4. 合并分支,把 dev 合并到 master

    切到 mater, 合并 dev

  5. 删除 dev 分支(if necessary)

results matching ""

    No results matching ""