git中的分支管理
/*游戏或者运动才能让我短暂的忘记心痛,现如今感觉学习比游戏和运动还重要——曾少锋*/
如果对git基础不太熟悉的可以参考:http://www.cnblogs.com/zengsf/p/7506219.html
想把文件推到github中的过程可以参考:http://www.cnblogs.com/zengsf/p/7511370.html
分支其实很好理解,就是中间插入进来,就如同大树一样一条主干,多条分支。
HEAD就是当前提交点,当你操作次分支,那么HEAD就在当前提交次分支处,当你在操作
主分支是,HEAD就在当前提交主分支处。
git branch <name>创建一个次分支,这时我们就有两个分支了,那么肯定要切换主分支
和次分支。这是就利用git checkout <name>进行切换。其实也可以将上面两步变成一步,
git checkout -b <name>就直接创建好了并且切换到了这个分支上。
当你在zsf分支时,你修改了编辑器里面的内容,然后提交了(git add <file>,
git commit -m <file>)。然后在查看编辑器的内容时,就是你修改后的内容,
但是回到master分支时,查看的内容却是修改之前的内容。自己实践一下就
知道了。
既然可以分,那当然可以合并。但要注意的是要合并分支,那你当前要处于
主分支才能合并分支,通过git merge <分支名>。
合并好了,那么分支也就没必要了。就可以删掉了。通过git branch -d <name>
就可以删掉想删除的分支了。
分支也会有冲突的时候,在分支状态下,修改好了内容提交了。然后回到主分支,
也修改了里面的内容并且都提交了。这是在合并时就会有冲突。
在编辑器中就会变成这样:
为了解决冲突,我们可以修改为:
在利用git add <name>和git commit -m <name>,之后在查看提交过程:
git log --graph的命令是查看分支合并图。将两个合并成了一个,并且图中也很详细的整个过程。
合并分支时,Git使用用Fast forward
模式,但这种模式下,删除分支后,会丢掉分支信息。
意思就是合并后在利用git log --graph时并不会出现历史记录。
当然,你可以让其显示出来,并且不会丢失分支信息。就是利用--no-ff来禁止使用Fast forward
模式。
这样你在利用git log --graph时就跟上面不一样了。
、
或者这样更简洁
你将可以看到分支合并到主分支上的图了。
git中的分支管理的更多相关文章
- Git如何进行分支管理?
Git如何进行分支管理? 1.创建分支 创建分支很简单:git branch <分支名> 2.切换分支 git checkout <分支名> ...
- Git中的分支
具体请参考:https://git-scm.com/book/zh/v1/Git-%E5%88%86%E6%94%AF-%E4%BD%95%E8%B0%93%E5%88%86%E6%94%AF Git ...
- Git 远程仓库分支管理
目录 目录 速查表 关联远程代码仓库 克隆远程仓库 分支管理 创建分支 切换分支 合并分支 删除分支 解决冲突 速查表 指令 作用 git branch 查看分支 git branch newBran ...
- 五、git学习之——分支管理策略、Bug分支、feature分支、多人协作
一.分支管理策略 通常,合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息. 如果要强制禁用Fast forward模式,Git就会在merge时生 ...
- python使用git进行版本控制-分支管理
1.远程克隆 最好的方式是先创建远程库,然后,从远程库克隆: 首先在github上创建一个新的仓库,名字叫gitskills 我们勾选Initialize this repository with a ...
- Git远程和分支管理
一.远程 Git是分布式版本控制系统,最重要的优点就是远程仓库托管代码.不用自己搭建一个服务器,在github上面注册一个账户就可免费获取远程仓库. 首先需要先在github上面 ...
- Git教程之分支管理之二
分支管理策略 通常,合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息.如果要强制禁用Fast forward模式,Git就会在merge时生成一个 ...
- 史上最浅显易懂的Git教程3 分支管理
假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了.如果等代码全部写完再一次提交,又存在丢失每天进度的巨大风险 ...
- 【Git教程】Git教程之分支管理
在前一篇文章中,主要针对Git本地仓库和远程仓库的基本操作命令进行了简要介绍,本文主要集中介绍Git的另一个主要的特点:分支管理和多人协作. 什么是分支管理 当一个任务需要多人协作完成时,每个 ...
随机推荐
- DataTable转化成实体对象
/// <summary> /// The data extension. /// </summary> public static class DataExtension { ...
- java数组声明和变式--record1
java声明数组方式: String[] namelist; int numlist[];//此声明为动态声明,不能指定长度,numlist[10] 静态声明的方式: int a[]={1,2,3 ...
- Android JNI(一)——NDK与JNI基础
本系列文章如下: Android JNI(一)——NDK与JNI基础 Android JNI学习(二)——实战JNI之“hello world” Android JNI学习(三)——Java与Nati ...
- 音视频学习系列第(七)篇---MediaCodec的使用
音视频系列 什么是MediaCodec MediaCodec是安卓官方提供的一套用于音视频编码和解码的API,该API是在安卓4.1(API 16)引入的,因此只能用于4.1以上的手机 MediaCo ...
- 【Golang 接口自动化01】使用标准库net/http发送Get请求
发送Get请求 使用Golang发送get请求很容易,我们还是使用http://httpbin.org作为服务端来进行演示. package main import ( "bytes&quo ...
- js实现软件版本号的比较
//js实现软件版本号的比较 //随机举两个例子 pc2.4.3 或者pc3.5.6 /** * 输入 v1,v2 * 返回true代表v1比v2的版本新,false则代表v1与v2相等或者v1< ...
- 在每个节点填充向右的指针 Populating Next Right Pointers in Each Node
2018-08-09 16:01:40 一.Populating Next Right Pointers in Each Node 问题描述: 问题求解: 由于是满二叉树,所以很好填充. public ...
- C++中的赋值运算符重载函数(operator=)
MyStr& operator =(const MyStr& str)//赋值运算符 { cout << "operator =" << e ...
- hdu-6319-单调队列
Problem A. Ascending Rating Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 524288/524288 K ...
- HDOJ1008
#include "iostream" using namespace std; int main() { ) { int n; cin >> n; ) break; ...