zoukankan      html  css  js  c++  java
  • git创建、切换、合并、删除分支

    创建分支

    git branch 分支名

    git log --decorate --oneline显示

     

    切换分支

    git checkout 分支名

     

    合并分支

    git merge 分支名

    关于合并冲突问题的解释:

    所谓冲突,无非就是像两个分支中存在同名但内容却不同的文件, Git 不知道你要舍弃哪一个或保留哪一个,所以需要你自己来决定。 此时执行 git status 命令也会显示需要你解决的冲突

     

    删除分支

    git branch -d 分支名

    由于 Git 的分支原理实际上只是通过一个指针记载,所以创建和删除分支都几乎是瞬间完成。

    注意:如果试图删除未合并的分支,Git 会提示你“该分支未完全合并,如果你确定要删除,请使用 git branch -D 分支名 命令。

     

    关于匿名分支

    什么时候会出现这种情况:

    1.依次创建三个文件并提交(每创建一个文件提交一次)

    我们知道branch 命令创建一个分支,然后使用 checkout 命令切换分支。

    如果在没创建分支的情况下执行 checkout 命令,会有怎样的事情发生呢?执行 git checkout HEAD~ 命令:

    当前的 HEAD 指针处于分离状态,你可以环顾四周,做一些实验性修改并提交它们,并且你可以在这个状态中丢弃任何你所做的提交,而不影响任何分支,做法是执行 checkout 命令切换回别的分支。

    如果你希望创建一个新分支,并保持你所做创建的提交,你可以(现在或稍后)通过使用带有 -b 选项的 checkout 命令实现。例如:

    git checkout -b <new-branch-name>

    HEAD 指针当前指向 52861cf... 2.txt

    大致意思就是说:

    呃,说人话就是:你使用了 checkout 命令但没有指定分支名,所以 Git 帮你创建了一个匿名分支,OK,既然是匿名,那么当你切换到别的分支时,这个匿名分支中的所有提交都会被丢弃掉(因为你都没给人家命名,反正以后都找不回了,不丢了干啥?)。因此,你可以利用匿名分支来做做实验什么的,反正不会有负面影响。

  • 相关阅读:
    .net中实现运行时从字符串动态创建对象
    C# 用 VB.net 函數庫 實現全角與半角轉換
    實現.net 加載插件方式
    VS2008下載
    Lotus Notes Send EMail from VB or VBA
    用C#写vs插件中的一些Tip
    SQL2005中异常处理消息框可直接使用
    C#路径/文件/目录/I/O常见操作汇总
    利用.net反射动态调用指定程序集的中的方法
    说说今年的计划
  • 原文地址:https://www.cnblogs.com/pythonyeyu/p/10951159.html
Copyright © 2011-2022 走看看