创建与合并分支

在版本回退已经知道每次提交git 就把他们串成一条时间线,这条时间线就是一个分支。截至到目前为止,只有一条时间线。在git里这个分支就叫主分支,即master分支,HEAD严格来讲不止指向提交,而是指向master,master才是指向提交的,所以,HEAD指向的就是当前分支。

当我们创建新分支,例如dev是,git新建了一个指针叫dev,指向master相同的提交点,在把HEAD指向dev,就表示当前分支在dev上。

假如我们在dev上的工作完成了,就可以把dev合并到master上,给i他就是直接吧master指向dev的当前提交,就完成了合并。

首先,创建dev分支

git checkout -b dev

D:\learngit>git checkout -b dev
Switched to a new branch 'dev'

git checkout 加上-b表示创建并切换分支相当于下面两条命令

git branck dev

git checkout dev

然后用git branck 查看当前分支:

git branch

D:\learngit>git branch
* dev
  master

然后在dev分支上正常提交,比如对readme.txt做个修改

D:\learngit>git add readme.txt

D:\learngit>git commit -m "branch test"
[dev cf37810] branch test
 1 file changed, 2 insertions(+), 1 deletion(-)

现在,dev分支的工作完成,切换到master分支

git checkout master

D:\learngit>git checkout master
Switched to branch 'master'

发现刚才做的修改不见了,因为刚才提交在dev上,master此刻的提交点没有变,

现在把dev的分支工作成果合并到master分支上。

git merge dev

git merge 命令用于合并指定分支到当前分支

D:\learngit>git merge dev
Updating 05f13e4..cf37810
Fast-forward
 readme.txt | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

合并之后看到和dev分支最新提交结果一样

删除dev分支

git branch -d dev

Git鼓励大量使用分支:

查看分支:git branch

创建分支:git branch

切换分支:git checkout

创建+切换分支:git checkout -b

合并某分支到当前分支:git merge

删除分支:git branch -d

 

 

你可能感兴趣的:(日常总结)