我也来写个小总结---小白学git
2016-07-07 17:36
197 查看
学习git,首先要清楚几个工作流:工作目录(working copy)、缓存区(index)和头(head).
工作目录:是我们的实际工作目录;
缓存区:
看了一个有趣并且容易理解的解释:
1)当你投入开发时,会从gerrit 导入一个项目,并建立checkout自己的开发分支,此时我们的头就指向这个分支最近一次commit的结果,并且head里的内容与index和working copy中的内容是相同的;
2)当你在开发过程中对工作副本进行修改时,git会发现“咦~有文件被修改了啊”,此时working copy中的内容将不同与head和index,git也会对不同的部分作出标记。
3)当你开发完成后想要提交当前修改,你首先要执行git add命令,这条命令会将开发中有修改的文件缓存到index中,此时working copy和index中内容相同,但它们和head还不一致。
4)提交最后一步执行git commit,Git会创建了一个新的commit,head也会指向这个最新的commit,此时,HEAD &index & working copy又相同了,Git又开心了一次。
5)最后要提交新版本,在git add前还要pull服务器上一版本也就是HEAD的代码,人肉解决新版本与旧版本可能存在的冲突。解决后git add->git commit,最后git push,把代码push到gerrit上。
工作目录:是我们的实际工作目录;
缓存区:
看了一个有趣并且容易理解的解释:
1)当你投入开发时,会从gerrit 导入一个项目,并建立checkout自己的开发分支,此时我们的头就指向这个分支最近一次commit的结果,并且head里的内容与index和working copy中的内容是相同的;
2)当你在开发过程中对工作副本进行修改时,git会发现“咦~有文件被修改了啊”,此时working copy中的内容将不同与head和index,git也会对不同的部分作出标记。
3)当你开发完成后想要提交当前修改,你首先要执行git add命令,这条命令会将开发中有修改的文件缓存到index中,此时working copy和index中内容相同,但它们和head还不一致。
4)提交最后一步执行git commit,Git会创建了一个新的commit,head也会指向这个最新的commit,此时,HEAD &index & working copy又相同了,Git又开心了一次。
5)最后要提交新版本,在git add前还要pull服务器上一版本也就是HEAD的代码,人肉解决新版本与旧版本可能存在的冲突。解决后git add->git commit,最后git push,把代码push到gerrit上。
相关文章推荐
- IOS实用图片无限轮播 点击图片进行跳转
- 原生SQL查询解析支持
- 回文字符串
- Windows Server 2012 R2 Hyper-V虚拟化常见异常处理方法总结
- Android开发之动画效果浅析
- Log4j 配置 的webAppRootKey参数问题
- eclispe 无法启动调试 cannot connect to VM
- Window_纪中_1326_单调队列
- 同义词挖掘
- SDKD 2016 Summer Single Contest #01.C
- java的传递与引用
- 自定义圆形ImageView
- Android控件--ClearEditText带清除功能的输入框
- jQuery中$(function(){})与(function($){})(jQuery)、$(document).ready(function(){})等的区别详细讲解
- Java生成图片时使用BufferedImage的构造方法,让图片不失真
- 标签传播算法(LPA)Python实现
- Android来电监听和去电监听
- 使用org.apache.commons.io.FileUtils,IOUtils;工具类操作文件
- MYSQL的慢查询分析
- jquery contents()方法