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 # ...
随机推荐
- CodeForces 454C Little Pony and Expected Maximum
Little Pony and Expected Maximum Time Limit:1000MS Memory Limit:262144KB 64bit IO Format:%I6 ...
- SQL分组查询每组前几条数据
/*第一种实现方法,效率低并且有错误*/ DECLARE @DD DATETIME SET @DD = GETDATE() SELECT a.GoodsID , a.Account , a.LastU ...
- 《微信开发日志》之OAuth2验证接口
OAuth2接口说明: 企业应用中的URL链接(包括自定义菜单或者消息中的链接),可以通过OAuth2.0验证接口来获取员工的身份信息. 通过此接口获取用户身份会有一定的时间开销.对于频繁获取用户身份 ...
- js 定位到某个锚点
js 定位到某个锚点 html页面内可以设置锚点,锚点定义 <a name="firstAnchor">&nsbp;</a> 锚点使用 <a ...
- Java获取音频文件(MP3)的播放时长
最近的一个项目需要按照时间播放mp3文件,例如,播放10分钟的不同音乐. 这就意味着我得事先知道mp3文件的播放时长,以决定播放几遍这个文件. 方案一:Java的方式 找第三方的库,真的感谢这些提供j ...
- R语言画图基础参数设置
Graphical Parameters You can customize many features of your graphs (fonts, colors, axes, titles) th ...
- [HDOJ5783]Divide the Sequence(贪心)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5783 题意:给n个数,要求划分成多个段,使得每一个段的任意前缀和都不小于0. 从后往前截取,这样不会影 ...
- ARM处理器启动流程
根据<<芯片手册>>查看相关内容: 1.启动方式 2.地址布局 3.启动流程
- python_way day14 HTML
python_way day 14 HTML 一,标签 二.特殊字符 三,css <!DOCTYPE html> <html lang="en"> < ...
- Ubuntu Install Chrome Brwoser
在ubuntu下安装chrome浏览器,可以直接从官网下载:http://www.google.cn/intl/zh-CN/chrome/browser/thankyou.html?platform= ...