zoukankan      html  css  js  c++  java
  • Git-第五篇廖雪峰Git教程学习笔记(4)分支

    1、一开始,只有一个主分支(master),HEAD指向Master,而Master指向主分支。现在我们创建dev分支。

    lfy@lfy-PC MINGW64 /c/fyliu/lfyTemp/gitLocalRepository/yangjie (master)
    $ git checkout -b dev
    Switched to a new branch 'dev'
    
    lfy@lfy-PC MINGW64 /c/fyliu/lfyTemp/gitLocalRepository/yangjie (dev)
    $

      git checkout命令加上-b参数表示创建并切换,相当于以下两条命令:

    $ git branch dev
    $ git checkout dev
    Switched to branch 'dev'

     然后,用git branch命令查看当前分支:

    lfy@lfy-PC MINGW64 /c/fyliu/lfyTemp/gitLocalRepository/yangjie (dev)
    $ git branch
    * dev
      master
    
    lfy@lfy-PC MINGW64 /c/fyliu/lfyTemp/gitLocalRepository/yangjie (dev)
    $

       git branch命令会列出所有分支,当前分支前面会标一个*号。然后,我们就可以在dev分支上正常提交,比如对readme.txt做个修改。

    lfy@lfy-PC MINGW64 /c/fyliu/lfyTemp/gitLocalRepository/yangjie (dev)
    $ vim readme.txt
    
    lfy@lfy-PC MINGW64 /c/fyliu/lfyTemp/gitLocalRepository/yangjie (dev)
    $ git add readme.txt
    
    lfy@lfy-PC MINGW64 /c/fyliu/lfyTemp/gitLocalRepository/yangjie (dev)
    $ git commit -m "branch test"
    [dev 1df3a8d] branch test
     1 file changed, 1 insertion(+)
     create mode 100644 readme.txt

       切换到master分支。

    lfy@lfy-PC MINGW64 /c/fyliu/lfyTemp/gitLocalRepository/yangjie (dev)
    $ git checkout master
    Switched to branch 'master'
    Your branch is up to date with 'origin/master'.
    
    lfy@lfy-PC MINGW64 /c/fyliu/lfyTemp/gitLocalRepository/yangjie (master)
    $ git branch
      dev
    * master
    
    lfy@lfy-PC MINGW64 /c/fyliu/lfyTemp/gitLocalRepository/yangjie (master)
    $ ls
    LICENSE  README.md
    
    lfy@lfy-PC MINGW64 /c/fyliu/lfyTemp/gitLocalRepository/yangjie (master)
    $

       刚才在dev分支的readme.txt文件不见了。将dev分支修改的内容合并到master分支:

      命令:git merge branch_name

      解析:用于合并指定分支到当前分支。合并后,再查看readme.txt的内容,就可以看到,和dev分支的最新提交是完全一样的。

    lfy@lfy-PC MINGW64 /c/fyliu/lfyTemp/gitLocalRepository/yangjie (dev)
    $ git checkout master
    Switched to branch 'master'
    Your branch is up to date with 'origin/master'.
    
    lfy@lfy-PC MINGW64 /c/fyliu/lfyTemp/gitLocalRepository/yangjie (master)
    $ git branch
      dev
    * master
    
    lfy@lfy-PC MINGW64 /c/fyliu/lfyTemp/gitLocalRepository/yangjie (master)
    $ git merge dev
    Updating d1b1bf0..1df3a8d
    Fast-forward
     readme.txt | 1 +
     1 file changed, 1 insertion(+)
     create mode 100644 readme.txt
    
    lfy@lfy-PC MINGW64 /c/fyliu/lfyTemp/gitLocalRepository/yangjie (master)
    $

     Fast-forward信息,Git告诉我们,这次合并是“快进模式”,也就是直接把master指向dev的当前提交,所以合并速度非常快。当然,也不是每次合并都能Fast-forward,我们后面会讲其他方式的合并。

      合并完成后,就可以放心地删除dev分支了:

    lfy@lfy-PC MINGW64 /c/fyliu/lfyTemp/gitLocalRepository/yangjie (master)
    $ git branch -d dev
    Deleted branch dev (was 1df3a8d).
    
    lfy@lfy-PC MINGW64 /c/fyliu/lfyTemp/gitLocalRepository/yangjie (master)
    $ git branch
    * master

    2、解决冲突

  • 相关阅读:
    java 单例设计模式
    JAVAWEB监听器(二)
    pxe无人值守安装linux机器笔记----摘抄
    Ganglia3.1.7安装与配置(收录)
    Hadoop Sentry 学习
    安装和配置Sentry(收录)
    sqoop 的使用 -20160410
    深度分析如何在Hadoop中控制Map的数量(摘抄)
    CDH,CM下载
    大数据培训班 cloudera公司讲师面对面授课 CCDH CCAH CCP
  • 原文地址:https://www.cnblogs.com/ZeroMZ/p/11406658.html
Copyright © 2011-2022 走看看