git分支的创建、切换、合并及删除操作小结

一、查看现存分支

查看现存分支 : git branch命令;

git branch 

从结果可以看出, 现在只有一个分支master;

二、创建分支

创建分支 : git branch 分之名称, 就可以创建一个分支, 创建完分支以后可以查看分支, 当前使用的分支会显示成为绿色, 前面带有 "*" , 如果不是当前使用的分支, 显示的是白色, 并且没有 "*" 前缀;

git branch branch1 

三、切换分支

切换分支 : git checkout 分支名称, 切换分支以后, 在分支进行操作,文件的改变不会体现在master主分支中, 主分支改变, 会体现在其它分支中;

git checkout branch1 

关于主分支和其它分支 :

-- 分支编辑 : 现有两个分支 master 主分支, 和刚创建的branch1 分支, 切换到 branch1 分支, 在branch1 中创建一个文件 description_branch1.txt;

-- 其它分支文件不会影响主分支 : 然后在切换回 master 主分支, 发现没有description_branch1.txt文件, 创建一个文件 description_master.txt;

-- 主分支会影响其它分支 : 在切换回 branch1 分支中, 发现存在 description_master.txt文件;

对比过程 :

查看该工程项目分支情况 :

git branch 

– 分支结果 :

branch1
master 

切换到 branch1 分支 :

git checkout branch1 

– 切换结果 :

Switched to branch 'branch1' 

查看 branch1 分支下的文件 :

ls 

– 查看文件结果 :

AndroidManifest.xml ic_launcher-web.png res
assets    libs     src
bin     proguard-project.txt
gen     project.properties 

创建一个文件 :

touch description_branch1.txt 

添加这个文件到本地缓存 :

git add description_branch1.txt 

提交本地缓存 : 注意, 这里必须提交, 如果不提交缓存, 这个文件在主分支也会出现;

git commit -m 'add a description of branch1' 

– 提交结果 :

[branch1 7f5785e] add a description of branch1
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 description_branch1.txt 

查看该分支下的文件 :

ls 

– 查看文件结果 :

AndroidManifest.xml  libs
assets     proguard-project.txt
bin      project.properties
<strong>description_branch1.txt</strong> res
gen      src
ic_launcher-web.png 

切换回主分支 :

git checkout master 

– 切换分支结果 :

Switched to branch 'master'
Your branch is up-to-date with 'origin/master'. 

查看主分支文件 :

ls 

– 查看文件结果 : 没有在 branch1 中添加的文件;

AndroidManifest.xml ic_launcher-web.png res
assets    libs     src
bin     proguard-project.txt
gen     project.properties 

四、提交分支

提交分支命令 : 将本地的分支提交到 GitHub中;

git push origin experiment 

五、分支合并

合并分支命令 : 合并分支之后, 分支中有的文件在 主分支中也会显示, 相当于将branch1 分支中的文件拷贝了一份到master分支中;

git merge branch1 

合并结果 :

Updating f1bb97a..7f5785e
Fast-forward
 description_branch1.txt | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 description_branch1.txt 

六、删除分支

删除分支命令 :

git branch -d branch1 

强制删除分支命令 : 如果branch1 分支还没有被合并的话, Git是不允许删除这个分支的, 此时要想删除该分支, 就只能使用下面的命令强制删除该分支 :

git branch -D branch1 

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能有所帮助,如果有疑问大家可以留言交流。

(0)

相关推荐

  • Git 详细介绍查看、删除、重命名远程分支和tag

    Git 详细介绍查看.删除.重命名远程分支和tag 1. 查看远程 分支加上-a参数可以查看远程分支,远程分支会用红色表示出来: xiaosi@Qunar:~/code/qtown-score$ git branch -a FRESH-1606_qscore-20160503 * dev master remotes/origin/20151225-qtown-score-FRESH-1236 remotes/origin/2016-2qtscore remotes/origin/FRESH-1

  • git修改和删除功能_动力节点Java学院整理

    为什么Git比其他版本控制系统设计得优秀,因为Git跟踪并管理的是修改,而非文件. 你会问,什么是修改?比如你新增了一行,这就是一个修改,删除了一行,也是一个修改,更改了某些字符,也是一个修改,删了一些又加了一些,也是一个修改,甚至创建一个新文件,也算一个修改. 为什么说Git管理的是修改,而不是文件呢?我们还是做实验.第一步,对readme.txt做一个修改,比如加一行内容: $ cat readme.txt Git is a distributed version control syste

  • Git 删除远程服务器文件同时保留本地文件实例详解

    Git 如何删除远程服务器文件同时保留本地文件 在上传工程到git上时,有时候会把本地的一些eclipse配置文件传到服务器上,这时你先删除本地,再同步服务器,显然是不合理的.git提供了一个好的解决方法,可以直接删除服务器文件,同时不影响本地文件,命令如下 git rm --cached filename/-r directory git commit "xxxx" git push 1.删除服务器文件,本地保留 git rm --cached useless.log git com

  • Ruby实现的删除已经合并的git分支脚本分享

    使用Git管理代码工程,着实方便了很多,但是当做完feature分支或者完成hotfix之后,总是忘记删除这些无用的分支,一个一个地删除着实麻烦,重复手工劳动不符合程序员的风格,于是写了一个简单的脚本.一键删除那些不需要的分支,让多余的干扰信息离开视线. 删除哪些分支? 删除的为Merge(合并)操作的源分支.如果工程正在处于分支A(HEAD为A分支),分支B已经合并到了分支A,即A分支包含了B分支的内容,则会删除B分支. 代码 复制代码 代码如下: #!/usr/bin/env ruby #

  • Git 撤销操作、删除文件和恢复文件

    大致介绍 经过前面的学习,已经建立了版本库,并上传了文件,这次来学习对这些文件进行基本的操作,即: ◆ 撤销操作 ◆ 删除文件 ◆ 恢复文件 我在此之前,已经将三个文件提交到了版本库 撤销操作 撤销操作的语法: git checkout -- 文件名 撤销操作一般有两种情况: ◆ 文件修改后还没有提交到暂存区,进行撤销操作之后,文件恢复到和版本库中一模一样 ◆文件修改后提交到了暂存区,进行撤销之后,文件恢复到在提交到暂存区之前的状态 现在index.htm中的内容是: index.html 我们

  • git分支的创建、切换、合并及删除操作小结

    一.查看现存分支 查看现存分支 : git branch命令; git branch 从结果可以看出, 现在只有一个分支master; 二.创建分支 创建分支 : git branch 分之名称, 就可以创建一个分支, 创建完分支以后可以查看分支, 当前使用的分支会显示成为绿色, 前面带有 "*" , 如果不是当前使用的分支, 显示的是白色, 并且没有 "*" 前缀; git branch branch1 三.切换分支 切换分支 : git checkout 分支名

  • 浅析Git 分支的新建与合并

    分支的新建与合并 现在让我们来看一个简单的分支与合并的例子,实际工作中大体也会用到这样的工作流程: 开发某个网站. 为实现某个新的需求,创建一个分支. 在这个分支上开展工作. 假设此时,你突然接到一个电话说有个很严重的问题需要紧急修补,那么可以按照下面的方式处理: 返回到原先已经发布到生产服务器上的分支. 为这次紧急修补建立一个新分支,并在其中修复问题. 通过测试后,回到生产服务器所在的分支,将修补分支合并进来,然后再推送到生产服务器上. 切换到之前实现新需求的分支,继续工作. 分支的新建与切换

  • python集合的创建、添加及删除操作示例

    本文实例讲述了python集合的创建.添加及删除操作.分享给大家供大家参考,具体如下: 集合时无序可变的序列,集合中的元素放在{}内,集合中的元素具有唯一性. 集合中只能包含数字.字符串.元组等不可变的类型数据(或者说可哈希),而不能包含列表.字典.集合等可变的类型数据 1.集合的创建 方法一:把集合直接赋值给一个变量 >>> num={1,2,3,4} 方法二:使用range对象 >>> a=set(range(1,4)) >>> a {1, 2,

  • 关于MongoDB索引管理-索引的创建、查看、删除操作详解

    索引是提高查询查询效率最有效的手段.索引是一种特殊的数据结构,索引以易于遍历的形式存储了数据的部分内容(如:一个特定的字段或一组字段值),索引会按一定规则对存储值进行排序,而且索引的存储位置在内存中,所在从索引中检索数据会非常快.如果没有索引,MongoDB必须扫描集合中的每一个文档,这种扫描的效率非常低,尤其是在数据量较大时. 1. 创建/重建索引 MongoDB全新创建索引使用ensureIndex()方法,对于已存在的索引可以使用reIndex()进行重建. 1.1 创建索引ensureI

  • git分支管理_动力节点Java学院整理

    分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习Git的时候,另一个你正在另一个平行宇宙里努力学习SVN. 如果两个平行宇宙互不干扰,那对现在的你也没啥影响.不过,在某个时间点,两个平行宇宙合并了,结果,你既学会了Git又学会了SVN! 分支在实际中有什么用呢?假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了.如果等代码全部写完再一次提交,又存在丢失每天进度的巨大风险. 现在有了分支,就不用怕了.你

  • 数据库表的创建、管理和数据操作(实验一)

    今天我们就以实验的形式对表的创建.管理和数据操作进行学习,上课吧. [实验目的]:了解SQL语言的使用,进一步理解关系运算,巩固数据库的基础知识. [实验要求]:利用SQL语言进行数据库表的各种操作: 1.数据库表的创建.修改和删除操作. 2.向表中进行数据的插入.删除和修改操作. [实验内容] 1. 利用数据定义语句在实验一创建的stu_DB库中建立学生管理系统的三个表:Student.Course.SC. 2.利用INSERT.UPDATE和DELETE语句对上述三张表的数据进行插入.更新和

  • git查看、创建、删除、本地、远程分支方法详解

    1. 查看远程分支 git branch -r origin/master 2. 查看本地分支 git branch *master 注:以*开头指明现在所在的本地分支 3. 查看本地分支和远程分支 git branch -a *master remotes/origin/master 4. 创建分支 *新建一个分支,但依然停留在当前分支 git branch [branch-name] *新建一个分支,并切换到该分支上 git branch -b [branch-name] 4-1 创建本地分

  • idea切换git地址并刷新右下角git分支

    1  点击VCS-Git-Remotes... 2 点击Edit修改输入新地址即可,name可以自己写 3 修改成功以后,点击VCS-Git-fetch,刷新远程修改到本地,此时点击右下角git分支树,就是最新的分支树了 IDEA git修改远程仓库地址的三种方法 1.修改命令 git remote set-url origin <url> 2.先删除后添加 git remote rm origin git remote add origin [url] 例如: 方法3.直接修改config文

  • Git分支合并冲突解决的方法实现

    前2天群里发了张git历史图,如下: 根据提交历史,可以看出图中所有分支合并都采用merge的方式,具体merge是怎么操作的,可以阅读下边文章. 根据项目上的需求,如果要求git提交历史是比较简单的一条时间线,可以使用rebase的合并:如果没有这个要求,可以使用merge合并,其分支树是网状结构,但每个提交也都是比较明确清晰的.他们的区别,可参考git merge与 git rebase区别及实例: rebase合并:本质是先取消自己的提交,临时保存,然后把当前分支更新到最新的origin分

随机推荐