Git教程学习(四)

12. 分支管理场景

多人协同工作时,你在优化代码X,需要较长时间才能完成,未完成之前会影响整体代码的使用.于是写完的代码不能提交到版本库,提交就会影响别人使用整体的代码.不提交你就失去了git的版本管理功能.

于是需要分支,为你正在修改的代码建立分支,别人看不到.而你在自己的分支上工作,最后完成再合并到原来的分支

13. 创建与合并分支

13.1. 场景

在Git中,版本控制是靠指针.每个分支都有一个专用的指针.同时有一个HEAD指针指向主版本.实现的时候HEAD指针实际上是指向分支指针的,再由分支指针指向分支.每次有commit就相当于有了新的分支版本.但是一个分支的不同版本只有一个分支指针.

建立新分支其实就是新建了一个分支指针X并把HEAD指向这个分支指针,这样你的修改就都在这个分支上而不会影响主版本A的修改.

在完成修改之后再把分支X和原主版本A合并

13.2. 创建新分支

$ git checkout -b dev
Switched to a new branch ‘dev‘

相当于
$ git branch dev
$ git checkout dev
Switched to branch ‘dev‘

13.3. 查看所有分支(其中*对应的就是HEAD指向的当前版本

$ git branch
* dev
  master

这时修改文件,add commit之后修改的就是生成了dev分支的新版本.不会影响master

13.4. 切换分支

$ git checkout master
Switched to branch ‘master‘

将当前分支变成master,dev依然存在

13.5 合并dev与master

$ git merge dev
Updating d17efd8..fec145a
Fast-forward
 readme.txt |    1 +
 1 file changed, 1 insertion(+)

将dev与当前HEAD指向的版本库合并.目测这种合并是选择了两个分支中最新的内容.

13.6. 删除分支

$ git branch -d dev
Deleted branch dev (was fec145a).

14.

时间: 2024-10-16 08:50:03

Git教程学习(四)的相关文章

廖雪峰Git教程学习笔记(一)

作者及其背景:仔姜,大三学生,幼儿园英语水平,熟系Linux文件基本操作(最基础的) 文章内容或许有些疏漏之处还望各位大佬见谅,如果构成侵权或出现其他问题,请联系我邮箱:[email protected],如果需要更全的知识请移步廖老师Git教程 学习内容来源:廖雪峰Git教程:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 感谢廖雪峰老师提供的教程 正文开始: Git简介 什

廖雪峰Git教程学习笔记

廖雪峰git简单教程学习笔记 教程地址:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b0001.可以这样设计目录,在d:\reposisoty\ 在这个目录下面有很多的仓库.mkdir learngitcd learngit>>git init          #这样就把learngit 初始化成了一个仓库>>git status        #说明当前仓库的状态并

Git教程学习(二)

教程来自: Git教程(廖雪峰的官方网站) 主要命令: $ git log #查看已提交内容 $ git log --pretty=oneline #查看已提交内容(紧凑版) $ git reset --hard HEAD^ #回退到上一版本 $ git reset --hard 3628164 #回退到版本3628164 $ git reflog #查看提交过的命令 5. 版本回退 5.1 repo会记录每次提交的版本,用户也可以随时回退到任何版本.比如以下三个readme.txt版本 版本1

Git教程学习 --第四篇 分支管理

1.创建与合并分支 查看分支:git branch 创建分支:git branch <name> 切换分支:git checkout <name> 创建+切换分支:git checkout -b <name> 合并某分支到当前分支:git merge <name> 删除分支:git branch -d <name> 2.解决冲突 1.准备新的分支feature1分支 命令git checkout -b feature1 2.修改readme.tx

git教程学习集合

客户端集合: GitHub for Windows使用教程(一) GitHub for Windows使用教程(二) GitHub for windows使用教程(三) GitHub for Windows使用教程(四) 廖雪峰git命令行: http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

Git教程学习(三)

7. 撤销修改 7.1. 对于还没有git add的修改,可以使用git checkout丢弃工作区的修改 $ git checkout -- readme.txt readme.txt如果没有被git add,那么回到master库中的状态(即上一次git commit时的状态) readme.txt如果已经git add了,又进行了修改,那么回到git add时的状态. 总的来说是回到最近一次git commit或git add时的状态. 7.2. 对于还没有git commit但已经git

Git教程学习(五)

14. 解决冲突 14.1. 场景 当分支A和分支B在同一个文件上都有修改时会出现冲突.常见的情况是从master分支的基础上生成了新分支dev,然后在dev上进行了修改并add&commit了.后来在master上对同一个文件进行了修改,也add&commit了.这时合并两个分支的操作就会失败. $ git merge feature1 Auto-merging readme.txt CONFLICT (content): Merge conflict in readme.txt Aut

Swift学习笔记 - 教程学习四 控制流(Control Flow)

4 控制流(Control Flow) 4.1 For-In Loops 用for-in循环遍历一个序列,如一组连续数.数组元素.字符串中字符等. for index in 1...5 { print("\(index) times 5 is \(index * 5)") } // 1 times 5 is 5 // 2 times 5 is 10 // 3 times 5 is 15 // 4 times 5 is 20 // 5 times 5 is 25 index是一个在每次循

Git教程学习 -- 第五篇 Bug分支

一.分支管理策略 1.首先创建并切换dev分支 git checkout -b dev 2.新建dev.txt文件,并添加 git add dev.txt 二.Bug分支 1.当工作进行到一半,还没办法提交,但是还要修复bug,怎么办呢 先把工作现场"储藏"起来,等以后恢复现场后继续工作: git stash 2.如何修复bug呢?首先创建一个分支 修改bug文件 text.txt 之后添加提交 修复完成后,切换到master分支,并完成合并,最后删除changebug 是时候回到de