Git分支管理
一、Git分支的使用
查看分支:
git branch
创建分支:
git branch branch1
切换到branch1
git checkout branch1
再用git branch查看,会看到有两个分支master和branch1,当前分支前面会有一个*
在branch1分支下,创建一个内容为branch file的branchtest的文件,并提交到新分支:
echo "branch file" >> branchtest
git add branchtest
git commit -m "branch1"
切换回master分支后会发现已经没有branchtest这个文件
git checkout master然后ls就看不到branchtest这个文件
二、Git分支的合并和删除
把branch1分支合并到master
git merge branch1
删除分支,如果分支没有合并,删除之前会提示
git branch -d branch1
如果分支没有合并,删除之前会提示
不合并强制删除
git brach -D branch1
合并和删除分支时都不能在该分支下操作
三、分支使用的原则
1、master分支是非常重要的,线上发布代码用这个分支,平时我们开发代码不要在这个分支上
2、创建一个dev分支,专门用作开发,只有当发布到线上之前,才会把dev分支合并到master
3、开发人员应该在dev的基础上再分支成个人分支,个人分支(在自己pc上)里面开发代码,然后合并到dev分支
四、现场保留
当你正在进行项目中某一部分的工作,里面的东西处于一个比较杂乱的状态,而你想转到其他分支上进行一些工作,问题是,你不想提交进行了一半的工作,否则以后你无法回到这个工作点,解决这个问题的方法就是git stash命令
例如:在branch1分支上编译一个文件1.txt
想要去另外分支逛逛,就可以先git add 1.txt
然后git stash保存一下现场
在到另外的分支上去(如果1.txt是一个已经存在的文件那么保存现场后文件内容则是你在编辑之前的内容,如果1.txt是一个新建的文件那么保存后就看不到1.txt这个文件了)
在回到branch1后查看现场列表:
git stash list
stash@{0}: WIP on branch1: 887e177 add 000
stash@{1}: WIP on branch1: 887e177 add 000
stash@{2}: WIP on branch1: 887e177 add 000
恢复现场用git stash apply,或指定要恢复的现场
git stash apply stash@{0}
五、远程分支
查看远程分支信息,使用git remote -v本地新建的分支如果不推送到远程,对其他人就是不可见的
查看远程分支:
git ls-remote origin
从本地推送分支:
git push origin branch1
如果推送失败,先用git pul抓取远程的新提交
在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致
从远程抓取分支,使用git pull,如果有冲突,要先处理冲突
Git分支管理的更多相关文章
- GIT分支管理模型
GIT分支管理模型 link: git-branching-model 主分支(Main branches) 项目两个常驻分支: master 主干分支(锁定),仅用于发布新版本,平时不能在上面干活, ...
- Git 分支管理是一门艺术
转载: Git 分支管理是一门艺术 1 要确保:团队成员从主分支(master)获得的都是处于可发布状态的代码,而从开发分支(develop)应该总能够获得最新开发进展的代码. 2 "辅助分 ...
- Git 分支管理详解
大纲: 1.前言 2.创建分支 3.切换分支 4.合并分支(快速合并) 5.删除分支 6.分支合并冲突 7.合并分支(普通合并) 8.分支管理策略 9.团队多人开发协作 10.总结 注,测试机 Cen ...
- Git分支管理[三]
标签(linux): git 笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 git分支管理命令 git branch #创建分支 git branch -v # ...
- Git—分支管理
Git—分支管理 分支学习:branch称为分支,默认仅有一个名为master的分支.一般开发新功能流程为:开发新功能时会在分支dev上进行,开发完毕后再合并到master分支. branch相关常用 ...
- [转载]理解 Git 分支管理最佳实践
原文 理解 Git 分支管理最佳实践 Git 分支有哪些 在进行分支管理讲解之前,我们先来对分支进行一个简单的分类,并明确每一类分支的用途. 分支分类 根据生命周期区分 主分支:master,deve ...
- 02: git分支管理
目录:GIT其他篇 01: git & github 02: git分支管理 目录: 1.1 Git常用命令 1.2 主要分支(保护分支) 1.3 特性分支:feature (开发分支合并到d ...
- git 分支管理——多人协作
git 分支管理--多人协作 一般一个项目有一个master主分支,还有一个develop开发分支.主要是在develop分支上协作开发,然后merge合并到master主分支上. 当从远程仓库克隆时 ...
- Git分支管理及合并
Git分支管理 建立分支 git branch [name] 切换到分支 git checkout [name] 查看有哪些分支 git branch 比较分支 git diff [b ...
- git学习------>Git 分支管理最佳实践
ps:本文转载于 : https://www.ibm.com/developerworks/cn/java/j-lo-git-mange/index.html Git 是目前最流行的源代码管理工具.大 ...
随机推荐
- JS详解
事件源对象:event.srcElement.tagName event.srcElement.type 捕获/释放:event.srcElement.setCapture(); event.sr ...
- android studio 中依赖库compile 的一些库的地址
1.添加Gson的依赖库 compile 'com.google.code.gson:gson:2.2.4' 2.使用Volley执行网络数据传输的依赖库 compile 'com.mcxiaoke. ...
- boxsizing属性 IE盒模型和标准盒模型
CSS3有一个非常有用但应用不广泛的属性: box-sizing: content-box | border-box | inherit content-box,默认属性,遵从标准盒模型. borde ...
- JSTL(1.1)的配置
1.查看你的项目中web.xml实际配置的servlet版本号? 2. servlet2.4所需要的jstl版本是1.1,所以上网下载jstl(1.1)的2个jar包,然后把这个2个jar包拷贝到你自 ...
- rails 常用的验证方法 validates (转)
Agile Web Development with Rails 17.4 validation validate 在save的时候激活validate_on_create ...
- GridView不能添加头布局,并且scrollView与GridView冲突导致一些页面无法融合
此贴为标记贴 方便下次使用 在项目需求中原本是用ScrollView来进行整个页面的滑动,ScrollView里面包含的有图片轮播,文字轮播,与2列GridView的item 问题 使用原生的Grid ...
- box-shadow中的理解(bootstrap)
刚研究了bootstrap中css里面的源码,找到了表单(form)中关于输入框的一些设置,根据要求,label标签和input标签需要一起使用,(屏幕阅读器中不能单独辨认input),如需隐藏lab ...
- ios中自定义cell 设置cell的分组结构
ios系统默认的cell并不能满足我们的需求 这个时候就需要自定义我们的cell 自定义cell为分组的时候 需要设置分组样式 以下是我常用分组的二种方法: 第一是 在自定义的UITableView ...
- what just I know
#update_s#http://www.taijixy.com/linker.html#update_e# #server_s#www.taijixy.com#server_e# #live_ver ...
- 第5章 搭建S3C6410开发板的测试环境
1.使用Eboot擦除NandFlash的方法如下: 第一步:准备工作 用串口线或USB转串口线连接开发板和PC,并启动minicom 第二步:进入Eboot状态 打开OK6410开发板的电源开关,过 ...