网站大量收购闲置独家精品文档,联系QQ:2885784924

3-03git分支教学.ppt

  1. 1、本文档共34页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
git stash命令 git stash命令 当你正在进行项目中某一部分的工作,里面的东西处于一个比较杂乱的状态,而你想转到其他分支上进行一些工作。问题是,你不想提交进行了一半的工作,否则以后你无法回到这个工作点。解决这个问题的办法就是git stash命令。 stash 储藏 git stash (储藏当前状态之后,就能切换到别的分支) git stash list (查看储藏状态的列表) git stash apply 储藏的名字 (回到原来的分支之后,如何恢复到之前那种混乱的工作状态) 3.分支—工作中使用分支 Git 的开发者都喜欢以这种方式来开展工作,在master 分支中保留完全稳定的代码,即已经发布或即将发布的代码。与此同时,他们还有一个名为develop 专门用于后续的开发,或仅用于稳定性测试。当然并不是说一定要绝对稳定,不过一旦进入某种稳定状态,便可以把它合并到master 里。还有在工作中,把开发任务分解为各个功能或者模块,用topic(topic branch主题分支,有又成为feature branch特性分支),实现之后并测试稳定之后,可以合并到其他分支。 小结 git branch bracnName (如何创建分支) git checkout branchName(如何切换到想要的分支上去) git checkout -b (上述两个命令的合并) git merge branchname (合并分支) git add (解决合并冲突之后,用add命令标记为已经解决了) git stash 实际任务 请看完视频之后,跟着《Pro Git中文版》第三章的3.1,3.2,3.3小节,第六章6.3小结所演示的内容做一遍。( 《Pro Git中文版》3.5远程分支的内容,会在后面的视频中讲解。Git还有衍合操作,在3.6节。这里我不讲解了,也不推荐大家使用,因为错误使用会造成多人协同的困难。)或者重新播放我的视频,边播放一段,然后动手做一遍,就能理解分支了。 如果你能够跟着视频,结合图书《Pro Git中文版》第三章的3.1,3.2,3.3小节》6.3小节,操作完之后,能够回答以下问题,说明你已经理解本地分支了。 1.在Git中如何创建分支? 2.如何切换到已经创建的分支上去? 3.有A、B两个分支,如何在A分支上合并B分支?如果合并B分支,发生合并冲突之后,如何解决? 4. 切换分支时,工作区必须是干净状态,如果工作到一半,不想提交版本库中又要切换到另外的分支如何做呢? 谢谢观赏 Page ? * Page ? * GIT视频 第3集 Git分支 3.Git分支 问题:Git是如何保存数据的? 【先演示】 mkdir mybranch cd mybranch git init nano README index.html LICENSE2 git status git add README index.html LICENSE2 git commit –m “initial commit of my project” 当使用git commit 新建一个提交对象前,Git 会先计算每一个子目录(本例中就是项目根目录mybranch目录)的校验和,然后在Git 仓库中将这些目录保存为树(tree)对象。之后Git 创建的提交对象,除了包含相关提交信息以外,还包含着指向这个树对象(项目根目录)的指针,如此它就可以在将来需要的时候,重现此次快照的内容了。 这个就是git保存数据的原理,用文件快照的方式。 下面,我们用图示的方法来再解释一下。 3. Git分支 刚才,我们做的命令行,Git 仓库中有五个对象:三个表示文件快照内容的blob 对象;一个记录着目录树内容及其中各个文件对应blob 对象索引的tree 对象;以及一个包含指向tree 对象(根目录,本例为git03目录)的索引和其他提交信息元数据的commit 对象。 git status nano index.html //第一次修改 git add -am “add fuction B in index.html” nano index.html //第二次修改 git add -am “add fuction C in index.html” git branch testing git checkout testing nano index.html 3. Git分支 作些修改后再次提交,那么这次的提交对象会包含一个指向上次提交对象的指针(即下图中的parent 对象)。两次提交后,仓库历史会变成图3.2 的样子:

文档评论(0)

xuefei111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档