git分支
git的分支是一个版本库。检出分支分支会影响暂存区和工作区的内容。
创建分支:git branch [testing]
检出分支:git checkout [testing]
创建并且检出分支:$git checkout -b iss54
检出分支之前最后将没有提交的暂存区暂存区和工作区提交,清空
检出分支会将工作区内容恢复外围检出某分支时它所指向的commit的快照
合并分支:
$ git merge [branch-name]
删除分支: $ git branch -d [branch-name]
合并冲突:
出现冲突:两个分支都针对同一文件做出不同修改
CONFICT :merge conflict in index.html
$git status差略合并的冲突文件
unmerged:index.html 冲突文件以unmerged状态列出
合并文件内容
1、<<<HEAD...
2、=====
3、>>>is553
1~2之间为原分支内容,2~3为新增分支的内容
分支管理:
$git branch 列出当前所有分支的清单 *所在表示当前所在分支
$git branch -v 查看各分支最后一次commit信息
$git branch --merged 查看哪些分支已经被合并入当前分支
$git branch --nomerged 查看尚未合并的分支
$git branch -D testing 强制删除分支
远程分支
远程分支(remote branch)是对远程仓库状态的索引
git push (远程分支名)(分支名) 提取本地分支并更新对应的远程仓库的指定分支
git fetch git fetch抓取远程分支信息,存在本地的远程分支缓存
将远程分支内容合并到当前分支: git merge origin/serverfix
从远程分支基础上分化新分支:git checkout -b serverfix origin/serverfix 这样分化出来的分支就是该远程分支的跟踪分支
跟踪分支:
从远程分支检出的本地分支被称为跟踪分支(tracking branch)。在跟踪分支里,git push 会自动判断向指定分支推送数据,git pull会自动获取所有远程索引
clone后的本地master分支就是一个跟踪分支
创建跟踪分支:git checkout -b [分支名] [远程名/分支名]
git branch -vv:查看所有的跟踪分支以及它们的跟踪对象
衍合
把一个分支整合到另一个分支的方法有两种:merge(合并)、rebase(衍合)
merge命令:把两个分支最新快照以及二者最新的共同祖先进行三方合并
衍合rebase:将c3的变化补丁重新再c4的基础上打一遍
git rebase [分支名]
git rebase --onto master server client 检出client分支,找错client分支和server分支共同祖先的变化,然后把它们在master上冲演一遍
$git rebase [主分支] [特性分支] ,会先检出特性分支,然后再在主分支上重演
git分支的更多相关文章
- Git 分支
Git 保存的不是文件的变化或者差异,而是一系列不同时刻的文件快照,某一次的提交指向这处时刻的文件快照,看起来就像每次提交都保存了当时的文件,连续的提交形成一条长链 分支 指向某一个特定的提交,不同的 ...
- Git分支管理
一.Git分支的使用 查看分支: git branch 创建分支: git branch branch1 切换到branch1 git checkout branch1 再用git branch查看, ...
- Git分支的前世今生
摘自Jack__CJ CSDN博客,写得很好,保存一下. 导读 几乎所有的版本控制系统都以某种形式支持分支. 使用分支意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线. 在很多版本控制系 ...
- GIT分支管理模型
GIT分支管理模型 link: git-branching-model 主分支(Main branches) 项目两个常驻分支: master 主干分支(锁定),仅用于发布新版本,平时不能在上面干活, ...
- Git详解之三 Git分支
相关文档 — 更多 Git 基础培训.ppt GIT 使用经验.ppt GIT 介绍.pptx GIT 分支管理是一门艺术.docx Eclipse上GIT插件EGIT使用手册.docx git/gi ...
- git初体验(三)git分支
分支的理念就是分身,就像孙悟空拔出猴毛变出很多跟自己一模一样的猴子,然后每个猴子做自己的事情互不干涉,等到所有猴子做完之后,猴子集合来合并劳动成果,然后悟空就把那些猴子猴孙门统统收回了. 你创建了一个 ...
- 如何在终端实时展现git分支
在微博上看到ghosTM55在终端可以实时展现出当前运行的分支,觉得很奇特,于是google了一把.这里面存在两个内容,第一个bash,第二个是git bash基础: 了解到linux的shell存在 ...
- php 通过exec 创建git分支失败
今天给我们自己的发布系统增加一个新建分支的功能,操作比较简单,但是使用php执行shell命令的时候总是无法push分支到远程,但是登陆服务器执行却是可以的 新建分支命令如下 git fetch -- ...
- 开发与测试整体过程中的Git分支merge流程
开发与测试整体过程中的Git分支merge流程 Git分支merge之开发流程 首先在Gitlab上有个仓库存储着原始的项目代码,其中包含一个叫master的分支.然后可能按功能进行分配,由不同的开发 ...
- Git 分支管理是一门艺术
转载: Git 分支管理是一门艺术 1 要确保:团队成员从主分支(master)获得的都是处于可发布状态的代码,而从开发分支(develop)应该总能够获得最新开发进展的代码. 2 "辅助分 ...
随机推荐
- Wiki安装
我们推荐使用Mediawiki. MediaWiki是基于php环境的,所以如果需要使用该类wiki,就要先部署php的环境. wiki下载: https://www.mediawiki.org/wi ...
- MFC编程入门之二十三(常用控件:按钮控件的编程实例)
上一节讲了按钮控件Button.Radio Button和Check Box的基本用法,本节继续讲按钮控件的内容,通过一个实例让大家更清楚按钮控件在实际的软件开发中如何使用. 因为Button控件在前 ...
- eclipse导入android项目红叉和红色感叹号怎么解决
解决办法如下:第一步:你要确保这个项目没有问题,有的项目本身就有问题,例如:xml文件,java程序等本身就有错.第二步:在Eclipse菜单中选择“Project”----〉Clean 解决不了,下 ...
- sql server项目死活启动不了的问题
报错没截图, 关键字"sessionfactory",tomacat 能够启动,但是网页打开是错误的 解决:c盘索引文件冲突,删除了 发生数据库c3p0错误,tomcat启动没玩没 ...
- 转!!MySQL中的存储引擎讲解(InnoDB,MyISAM,Memory等各存储引擎对比)
MySQL中的存储引擎: 1.存储引擎的概念 2.查看MySQL所支持的存储引擎 3.MySQL中几种常用存储引擎的特点 4.存储引擎之间的相互转化 一.存储引擎: 1.存储引擎其实就是如何实现存储数 ...
- Android之mtklog分析
Android之mtklog分析 [海外场测反馈][xxx]动态测试时对比机xxxx拨打测试机xxxxx自动挂断电话 工作中遇到一个掉话的问题,需要分析log,log比较大,我也没法上传,就简答的讲讲 ...
- Mysql执行大文件sql语句 -- 未测试
如果.sql文件过大,mysql会直接断开连接 解决方法: 在mysql的配置文件my.cnf 中加入 一行max_allowed_packet = 100M(该大小>=mysql.sql文件大 ...
- 解读浮动闭合最佳方案:clearfix
.clear{clear:both;height:0;overflow:hidden;} 上诉办法是在需要清除浮动的地方加个div.clear或者br.clear,我们知道这样能解决基本清浮动问题. ...
- (转)css3-box-sizing属性详解
box-sizing是CSS3的box属性之一.一说到CSS的盒模型(Box model)我想很多人都会比较烦,特别是对于新手,然而这个Box model又是我们CSS运用中比较重要的一个属性.那么C ...
- webform LinQ
LINQ,语言集成查询(Language Integrated Query)是一组用于c#和VB语言的扩展.它允许编写C#或者Visual Basic代码以查询数据库相同的方式操作内存数据. 他是一个 ...