zoukankan      html  css  js  c++  java
  • git学习——分支

    分支

    创建分支:git branch 如:git branch testing 

    Git通过HEAD指针知道用户是在哪一个分支上工作。

    切换分支用git checkout命令,注意:可以用git status 查看现在是处于哪一个分支

    如:$ git checkout testing

     

    如果此时再提交一次:

    $ vim test.rb
    $ git commit -a -m 'made a change'

    可以再次用git checkout master切换到分支master.

    分支的新建与合并

    分支的新建和切换一次性完成:git checkout -b [name]==>git branch [name]; git checkout [name]

    注意在切换分支时留心你的暂存区或者工作目录里,那些还没有提交的修改,它会和你即将检出的分支产生冲突从而阻止 Git 为你切换分支。切换分支的时候最好保持一个清洁的工作区域。稍后会介绍几个绕过这种问题的办法(分别叫做 stashing 和 commit amending)。

    分支的合并:git merge [文件名]

    注意:git checkout master 然后 git merge hotfix 的执行情况如下(第一张图片为合并前,第二长图片是合并后):

              

    此时hotfix可以删除; 删除命令:git branch -d hotfix

    合并的另一种方式:

    此时iss53也可以删除。

    遇到冲突时的合并

    有时候合并操作并不会如此顺利。如果在不同的分支中都修改了同一个文件的同一部分,Git 就无法干净地把两者合到一起(译注:逻辑上说,这种问题只能由人来裁决。)

    Git 作了合并,但没有提交,它会停下来等你解决冲突。要看看哪些文件在合并时发生冲突,可以用 git status 查阅:

    (具体细节可查看:http://git-scm.com/book/zh/v1/Git-%E5%88%86%E6%94%AF-%E5%88%86%E6%94%AF%E7%9A%84%E6%96%B0%E5%BB%BA%E4%B8%8E%E5%90%88%E5%B9%B6)

    分支的管理

    查看当前分支和所有分支:git branch

    查看各个分支最后一个提交对象的信息,运行 git branch -v

    查看与当前分支合并了的分支:git branch  --merged

    查看与当前分支没有合并的分支:git branch  --no-merged

    如果对没有合并进来的分支进行git branch -d (删除)操作,查看各个分支最后一个提交对象的信息,所以Git会报错。

    不过,如果你确实想要删除该分支上的改动,可以用大写的删除选项 -D 强制执行。

     远程分支

     ......

  • 相关阅读:
    [程序员代码面试指南]栈和队列-单调栈结构(单调栈)
    快学Scala第一部分
    Add Digits
    Nim Game
    将分布式中多台节点的日志信息集中到一个节点上
    Eclipse调试的一些小技巧
    Maven的常用命令
    Eclipse插件本地扩展安装
    Spark应用程序的运行框架
    Spark运行各个时间段的解释
  • 原文地址:https://www.cnblogs.com/lukexwang/p/4643993.html
Copyright © 2011-2022 走看看