【Git的基本操作六】分支管理】的更多相关文章

Git的原理涉及快照流.链表.指针等,这里不作过多叙述. 1.基本操作 git init 创建一个 Git 仓库 git clone [url] 拷贝一个 Git 仓库到本地 git add [file_name] git add 命令可将该文件添加到缓存 git commit -m "备注信息" 使用 git add 命令将想要快照的内容写入缓存区, 而执行 git commit 将缓存区内容添加到仓库中.使用 -am 可以跳过 add 命令 git reset HEAD git r…
5月份,为统一团队git分支管理规范,刚开始准备自己写,在网上搜了下,发现不少不错的git分支管理实践.最后我为团队选择了这个git分支管理实践 A successful Git branching model ,网上有不少参考这篇文章写的中文版gitflow实践,推荐一个中文版的Git 最佳实践:分支管理. 除了团队git管理的需要,我自己在github上有重要的开源项目采用github flow,这里转载一篇关于这两种分支管理的文章:GitHub Flow & Git Flow 基于Git…
分支管理 1. 什么是分支? 在版本控制过程中,使用对条线同时推进多个任务. 2. 分支的好处 同时并行推进多个功能开发,提高开发效率 各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响.失败的分支删除重新开始即可. 3. 分支操作 创建分支 git branch [分支名]…
学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总结 六.分支管理 创建与合并分支 解决冲突 分支管理策略 Bug分支 Feature分支 多人协作 Rebase 6.0.0 分支是个啥? 分支就是<平!行!宇!宙!!!>,这两个平行宇宙互不干扰. 在某个时间点,两个平行宇宙合并了,结果,你既学会了Git又学会了SVN! (这个逗逼的例子哈哈哈哈…
一.创建测试项目 1.新建GitHub仓库 在GitHub上面新创建一个仓库,用来演示分支管理,如下图所示: 点击“Create repository”按钮创建新仓库. 2.将本地仓库项目上传到GitHub 2.1.初始化本地仓库 输入下面命令: $ git init 如下图所示: 2.2.把文件添加到暂存区 在新创建的本地仓库下面新建一个名为branchdemo.txt的文件,并添加到暂存区,先查看本地仓库文件状态,如下图所示: 上图显示新创建的branchdemo.txt文件是未跟踪状态.需…
背景 什么是分支?简单地说,分支就是两个相对独立的时间线,正常情况下,独立的时间线永远不会有交集,彼此不知道对方的存在,只有特定情况下,两条时间线才会相遇,因为相遇,所以相知,因为相知,所以改变! 正如分支对于科幻电影来说是一个很好的卖点,关于分支的话题完全可以开启新的题材,对于这点相信不少科幻迷都深有体会,不必赘述. 回归正题,分支对于版本控制系统又意味着什么呢?实际工作中,我们大多作为一个团队一起合作开发项目,如果是独立开发者,只有一个人的话,其实用不到分支的概念,甚至远程仓库也用不到.所以…
1.Git分支管理 分支即是平行空间,假设你在为某个手机系统研发拍照功能,代码已经完成了80%,但如果将这不完整的代码直接提交到git仓库中,又有可能影响到其他人的工作,此时我们便可以在该软件的项目之上创建一个名叫“拍照功能”的分支,这种分支只会属于你自己,而其他人看不到,等代码编写完成后再与原来的项目主分支合并下即可,这样即能保证代码不丢失,又不影响其他人的工作.  说明: Git团队合作流程图 一般在实际的项目开发中,我们要尽量保证master分支是非常稳定的,仅用于发布新版本,平时不要随便…
每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支.截止到目前,只有一条时间线,这个分支叫主分支,即master分支,HEAD指向master,master指向提交,所以,HEAD指向的就是当前分支.每次提交,master分支都会向前移动一步,这样,随着你不断提交,master分支的线也越来越长. 当我们创建新的分支dev时,git新建了一个指针叫dev,指向master相同的提交,同时把HEAD指向dev,就表示当前分支在dev上,不过,从现在开始,对工作区的修改和提交就是针对de…
1.创建与合并分支 一开始的时候,master分支是一条线,Git用master指向最新的提交,再用HEAD指向master,就能确定当前分支,以及当前分支的提交点: 每次提交,master分支都会向前移动一步,这样,随着你不断提交,master分支的线也越来越长: 当我们创建新的分支,例如dev时,Git新建了一个指针叫dev,指向master相同的提交,再把HEAD指向dev,就表示当前分支在dev上: 你看,Git创建一个分支很快,因为除了增加一个dev指针,改改HEAD的指向,工作区的文…
创建一个属于自己的分支,别人看不到,你在你自己的分支上干活, 想提交就提交,直至开发完毕后,再一次性合并到原来分支上.这样,既安全,又不影响他人工作.          在实际的开发过程中,应照几个基本原则进行分支管理 ①   master分支应该是非常稳定的,也就是仅用来发布新版本,平时不能在上面干活: ②   干活都在dev分支上,也就是dev分支是不稳定的,到某个时候,版本发布时,再把dev分支合并到master分支上: ③   你和你的小伙伴们都在dev分支上干活,每个人都有自己的分支,…
(一)基本操作:  git中所有文件一共有三个状态:已提交,已暂存,已修改. 三个工作区域: git目录:.git文件夹,每次拷贝其实只拷贝git目录 工作目录:文件和目录都是从git目录中压缩对象数据库中提取出来的. 暂存区:是一个简单的文件,在git目录中,有时叫做索引文件. 工作流程: 1.在工作目录中修改文件 2.对修改后文件进行快照,存入暂存区 3.提交更新,将保存在暂存区的文件快照永久转存到git目录中. 获取帮助的方法:git help <verb> / git <verb…
来源:廖雪峰 通常,合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息. 如果要强制禁用Fast forward模式,Git就会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息. git merge --no-ff -m "merge with no-ff" dev 合并dev分支,请注意--no-ff参数,表示禁用Fast forward,因为本次合并要创建一个新的commit,所以加上-m参数,把com…
原创作品,转载请标明:http://blog.csdn.net/jackystudio/article/details/12309385 1.分支又是神马? 我为什么说又是... 分支就是一个我们能通过它创建出独立代码副本的东东.建立一个git仓库时,它会默认帮我们创建一个主分支,叫做master,之前所有的介绍我们都是在mater上面进行操作的. 这是一个最简单的分支模型,本文也基于此模型.每个点代表一个版本,master代表默认主分支,而branch代表新建的分支,HEAD可以认为是一个移动…
分支是在稳定版本出现bug的情况下,通过分支技术,在保证稳定版本稳定的情况,修改稳定版本的(差异下载的,速度极快,不同于SVN等技术,会将所有的代码下载到本地)副本,通过合并,解决冲突,最后回归到稳定版本的技术.分支的差异化下载时Git的亮点. 1.查看分支 通过git branch指令 提示当前分支是master 2.创建分支 通过git branch +分支名称 ok,名为gitbranch的分支创建完毕. 3.切换分支 (1).切换到gitbranch分支 通过git checkout +…
为什么要引入分支? 分支在实际中有什么用呢?假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了.如果等代码全部写完再一次提交,又存在丢失每天进度的巨大风险. 现在有了分支,就不用怕了.你创建了一个属于你自己的分支,别人看不到,还继续在原来的分支上正常工作,而你在自己的分支上干活,想提交就提交,直到开发完毕后,再一次性合并到原来的分支上,这样,既安全,又不影响别人工作. 查看分支:git branch 创建分…
查看分支 git branch 前面带 * 的为当前所在分支 创建分支 git branch 分支名 切换分支 git checkout 分支名 创建并切换到此分支 git checkout -b 分支名 合并分支 先切换到master git merge 分支名 删除分支 git branch -d 分支名…
进程的概念 1. 在linux系统中,每一段执行的程序都称为一个进程,被分配一个进程编号(id). 2. 每个进程都对应一个父进程,一个父进程可以复制多个子进程. 3. 一个进程可能以两种方式存在:前台和后台.前台是指用户在屏幕上可以进行操作的,后台是指屏幕上看不到的实际操作. 4. 一般系统的服务都是以后台进程的方式存在,并且常驻系统中,直到关机才结束. 进程操作命令 1. 查看正在执行的所有进程 ps [-aux] [| more] 其中,-a表示显示当前所有进程,-u表示以用户格式显示进程…
Git 学习(六)分支管理 几乎每一种版本控制系统都支持分支.使用分支意味着你可以从开发主线上分离开来,然后不影响主线的同时继续工作.在很多版本控制系统中,这是个昂贵的过程,常常需要创建一个源代码目录的完整副本,对大型项目来说会花费很长时间. 作为优越的版本控制系统,Git 对分支的管理是极其轻便易用的.本文具体说明Git是如何进行分支管理的,如分支的创建.查看.切换.删除等,以及分支的合并及冲突解决.分支对于多人协作是及其重要,内容较多,慢慢来~ 有人把 Git 的分支模型称为“必杀技特性”,…
-------------------------下面是阮一峰博士的git branch 逻辑结构图示---------------------------------------------- 如果你严肃对待编程,就必定会使用”版本管理系统”(Version Control System). 眼下最流行的”版本管理系统”,非Git莫属. 相比同类软件,git有很多优点.其中很显著的一点,就是版本的分支(branch)和合并(merge)十分方便.有些传统的版本管理软件,分支操作实际上会生成一份…
git学习(4)远程库和分支管理 1.1建立本地git库和远程库联系 我使用的是GitHub上的库,首先在GitHub上新建一个库,在建立与远程库的联系之前需要建立ssh key.建立ssh key可以参考廖老师的博客 $ git remote add origin git@github.com:keithmorning/studygit.git 上面的格式是$ git remote add 远程库名称 git地址:gitHub账户名/远程git名称 下一步将本地库推送到远程库 $ git pu…
首先从远端版本库clone下来一个全新的库: git clone username@xxx:/xxx/xxx.git 此时clone下来的,只是master分支,没有其他分支. 查看分支: git branch #查看本地分支 git branch -r #查看远端分支 git branch -a #查看所有分支,包括本地和远程的 分支名前面有 * 的,就是当前所在分支.分支名型如remote/origin/xxx的,就是远端分支. 创建本地分支: git branch <user_branch…
创建并转入新分支:git checkout –b XX(其中XX代表分支名称) 将新分支发布在github上: git push origin Branch1 往分支中添加文件:git add master/XX(master中的XX文件)或者git add XX(XX文件) 添加文件注释:git commit –m “XX” push:git push –u origin XX(之前的分支名称) 或push:git push 合并分支:先转入到master分支git checkout mast…
上一节讲了如何和远端的仓库协同工作,这一节介绍一下分支 ---------------------------- 提要 //创建一个分支dev $ git branch dev //切换到dev分支 $ git checkout dev //创建并切换到dev2分支 $ git checkout -b dev2 //查看当前的分支列表 $ git branch //合并dev2分支到当前分支 $ git merge dev2 //删除dev2分支 $ git branch -d dev2 //查…
如果你严肃对待编程,就必定会使用"版本管理系统"(Version Control System). 眼下最流行的"版本管理系统",非Git莫属. 相比同类软件,Git有很多优点.其中很显著的一点,就是版本的分支(branch)和合并(merge)十分方便.有些传统的版本管理软件,分支操作实际上会生成一份现有代码的物理拷贝,而Git只生成一个指向当前版本(又称"快照")的指针,因此非常快捷易用. 但是,太方便了也会产生副作用.如果你不加注意,很可能…
关于Git的一些分支管理规范... 一.分支与角色说明 Git 分支类型 master 分支(主分支) 稳定版本 develop 分支(开发分支) 最新版本 release 分支(发布分支) 发布新版本 hotfix 分支(热修复分支) 修复线上Bug feature 分支(特性分支) 实现新特性 Gitlab 角色与项目角色对应关系 Owner(拥有者) Git 管理员 Master(管理员) 开发主管 Developer(开发者) 开发人员 Reporter(报告者) 测试人员 Guest(…
转:http://www.ruanyifeng.com/blog/2012/07/git.html 如果你严肃对待编程,就必定会使用"版本管理系统"(Version Control System). 眼下最流行的"版本管理系统",非Git莫属. 相比同类软件,Git有很多优点.其中很显著的一点,就是版本的分支(branch)和合并(merge)十分方便.有些传统的版本管理软件,分支操作实际上会生成一份现有代码的物理拷贝,而Git只生成一个指向当前版本(又称"…
@(139 - Environment Settings | 环境配置) 一.Why? 分支在实际中有什么用呢?假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了.如果等代码全部写完再一次提交,又存在丢失每天进度的巨大风险. 现在有了分支,就不用怕了.你创建了一个属于你自己的分支,别人看不到,还继续在原来的分支上正常工作,而你在自己的分支上干活,想提交就提交,直到开发完毕后,再一次性合并到原来的分支上,这样…
如果你严肃对待编程,就必定会使用"版本管理系统"(Version Control System). 眼下最流行的"版本管理系统",非Git莫属. 相比同类软件,Git有很多优点.其中很显著的一点,就是版本的分支(branch)和合并(merge)十分方便.有些传统的版本管理软件,分支操作实际上会生成一份现有代码的物理拷贝,而Git只生成一个指向当前版本(又称"快照")的指针,因此非常快捷易用. 但是,太方便了也会产生副作用.如果你不加注意,很可能…
作者: 阮一峰 日期: 2012年7月 5日 使用"版本管理系统"(Version Control System). 眼下最流行的"版本管理系统",非Git莫属. 相比同类软件,Git有很多优点.其中很显著的一点,就是版本的分支(branch)和合并(merge)十分方便.有些传统的版本管理软件,分支操作实际上会生成一份现有代码的物理拷贝,而Git只生成一个指向当前版本(又称"快照")的指针,因此非常快捷易用. 但是,太方便了也会产生副作用.如果…
A successful Git branching model https://nvie.com/posts/a-successful-git-branching-model/ Git工程开发实践(一)——Git基础 https://blog.51cto.com/9291927/2172454 Git工程开发实践(二)——Git内部实现机制 https://blog.51cto.com/9291927/2173002 Git工程开发实践(三)——Git常用操作 https://blog.51c…