Git分支管理详解
内容来源:http://blog.jobbole.com/25775/
Git简介
- Git是分布式版本控制工具:Git 收取的是项目历史的所有数据(每一个文件的每一个版本),服务器上有的数据克隆之后本地也都有了。实际上,即便服务器的磁盘发生故障,用任何一个克隆出来 的客户端都可以重建服务器上的仓库,回到当初克隆时的状态。SVN是集中式的版本控制,在速度和健壮性上都不如Git。
- Git本质上是一个文件系统,有别于传统的版本控制工具记录每一次修改,Git是保存所有变更过的文件快照,每一个版本是指向不同文件的集合。
Git工作目录和文件状态
- Working Tree:当前的工作目录
- Stage:缓存区, 当前工作目录中有修改,但是这些修改没有Commit到本地仓库
- Repository:仓库
工作目录下的文件状态:(所有文件都只有2种状态:已跟踪或者是未跟踪)
1. 已跟踪的文件是指纳入版本控制的文件,在上次的快照中已经存在的文件。对于已跟踪的文件有三种状态:未更新,已修改或者是放入暂存区。
2. Git clone下文件后,所有文件的初始状态都是已跟踪:若编辑过文件,状态就变成“已修改”;git add *文件后状态就变成“放入暂存区”;commit以后这些文件就会变为“未修改”,重新纳入版本控制当中。
3. 如果新增了文件或者是删除文件,这些文件的状态默认都是未跟踪,需要用add命令将这些文家纳入跟踪再提交。
* Changes not stages for commit:如果新增文件或者是删除文件,要用“git add 文件名”或者是“git rm 文件名” 标记一下将这些文件纳入跟踪状态。纳入更新状态以后再察看git status 提示语会变成 Changes to be committed。
* 如果文件还在缓存区有了修改,需要重新运行git add 文件名,git add除了添加文件,还有将修改加入到缓存区的意思
git status && git diff
1.使用git status可以检查当前工作区的情况:未跟踪的文件,暂存的文件。如果没有任何内容,说明没有任何文件在上次提交后更改过。
2. git status 除了可以显示本地的更新状态以外,还可以显示
git ignore
Git使用:
1.新建本地文件夹并初始化:git init
初始化后,在当前目录下会出现一个名为 .git 的目录,所有 Git 需要的数据和资源都存放在这个目录中。不过目前,仅仅是按照既有的结构框架初始化好了里边所有的文件和目录,但我们还没有开始跟踪管理项目中的任何一个文件
2.克隆已有仓库代码:git clone git://github.com/XXX/XXX.git
3.
git add
Head Ref
Git如何解决分支合并冲突
Git如何设定某些文件不提交
Git分支管理详解的更多相关文章
- Git 分支管理详解
大纲: 1.前言 2.创建分支 3.切换分支 4.合并分支(快速合并) 5.删除分支 6.分支合并冲突 7.合并分支(普通合并) 8.分支管理策略 9.团队多人开发协作 10.总结 注,测试机 Cen ...
- Git学习总结(12)——多人开发 Git 分支管理详解
1.前言 在上一篇博客中我们主要讲解了Git 远程仓库,相信大家对远程的Git仓库有一定的了解,嘿嘿.在这一篇博客中我们来在大家讲解一下Git 分支管理,这可以说是Git的又一大特点.下面我们就来学习 ...
- Git远程操作详解(转)
转自:http://www.ruanyifeng.com/blog/2014/06/git_remote.html Git远程操作详解 Git是目前最流行的版本管理系统,学会Git几乎成了开发者的 ...
- 转载: GIt远程操作详解
Git远程操作详解 作者: 阮一峰 日期: 2014年6月12日 Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多优势,其中之一就是远程操作非常简便.本文详细介 ...
- (转)Spring事务管理详解
背景:之前一直在学习数据库中的相关事务,而忽略了spring中的事务配置,在阿里面试时候基本是惨败,这里做一个总结. 可能是最漂亮的Spring事务管理详解 https://github.com/Sn ...
- GIT分支管理模型
GIT分支管理模型 link: git-branching-model 主分支(Main branches) 项目两个常驻分支: master 主干分支(锁定),仅用于发布新版本,平时不能在上面干活, ...
- Oracle权限管理详解
Oracle权限管理详解 转载--CzmMiao的博客生活 Oracle 权限 权限允许用户访问属于其它用户的对象或执行程序,ORACLE系统提供三种权限:Object 对象级.System 系统级. ...
- Git 分支管理是一门艺术
转载: Git 分支管理是一门艺术 1 要确保:团队成员从主分支(master)获得的都是处于可发布状态的代码,而从开发分支(develop)应该总能够获得最新开发进展的代码. 2 "辅助分 ...
- Git分支管理[三]
标签(linux): git 笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 git分支管理命令 git branch #创建分支 git branch -v # ...
随机推荐
- 测算Redis处理实际生产请求的QPS/TPS
测算Redis处理实际生产请求的QPS/TPS Benchmark工具 redis发布版本中自带了redis-benchmark性能测试工具; 示例: 使用50个并发连接,发出100000个请求,每个 ...
- Python基础学习笔记(四)语句
参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-chinese-encoding.html 3. http://w ...
- nyoj325 zb的生日(DFS)
zb的生日 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 今天是阴历七月初五,acm队员zb的生日.zb正在和C小加.never在武汉集训.他想给这两位兄弟买点什么 ...
- 《FLASH CC 2015 CANVAS 中文教程》——2、基本的交互(点击、触摸)事件
注::如果你对 FLASH 这个软件操作不够熟悉,建议你可以先看看FLASH动画之类的书. :FLASH CC 在文中直接简称为CC. :以下所以文章中所说的快捷键 如果你按了不起作用,请检查是否有其 ...
- 在CSS中,BOX的Padding属性的数值赋予顺序为
4种可能的情况,举例说明: padding:10px; // 四个内边距都是10px padding:5px 10px; // 上下5px 左右10px padding:5px 10px 15px; ...
- js 监听监键盘动作(转)
主要分四个部分 第一部分:浏览器的按键事件 第二部分:兼容浏览器 第三部分:代码实现和优化 第四部分:总结 第一部分:浏览器的按键事件 用js实现键盘记录,要关注浏览器的三种按键事件类型,即keydo ...
- Redis学习记录之————微博项目
Key设计 全局相关的key: 表名 global 列名 操作 备注 Global:userid incr 产生全局的userid Global:postid Incr 产生全局的postid 用户相 ...
- Nexus4_屏幕截图目录
1. /sdcard/Pictures/Screenshots/ 2. 3.
- Web缓存的作用与类型
前言 Web缓存是指一个Web资源(如html页面,图片,js,数据等)存在于Web服务器和客户端(浏览器)之间的副本.缓存会根据进来的请求保存输出内容的副本:当下一个请求来到的时候,如果是相同的UR ...
- 07 concurrency and Multi-version
本章提要---------------------------------------------------------对并发和锁的进一步补充并发控制事务的隔离级别多版本控制读一致性的含义写一致性- ...