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 # ...
随机推荐
- C#获取CPUID(MD5输出),网卡ID,主DNS,备用DNS
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using Sy ...
- 2.建立exception包,建立Bank类,类中有变量double balance表示存款,Bank类的构造方法能增加存款,Bank类中有取款的发方法withDrawal(double dAmount),当取款的数额大于存款时,抛出InsufficientFundsException,取款数额为负数,抛出NagativeFundsException,
public class Bank { Double qian=0.0; double newBank(double a) { qian=qian+a; return qian; } double w ...
- CSS在线字体库,外部字体的引用方法
目录: 1:CSS家族五大字体 2:360和谷歌外部字体引用方法 3:谷歌外部字体引用方法详解 4:@font-face用法详解 一: {font-family:serif,sans-serif,fa ...
- SpringMVC 登陆判断
struts2:extends ActionSupport @Override public String execute() throws Exception { User user = userS ...
- JavaScript Replace 多个字符
<html> <head> <title></title> <script language="javascript"> ...
- python_way ,day5 模块,模块3 ,双层装饰器,字符串格式化,生成器,递归,模块倒入,第三方模块倒入,序列化反序列化,日志处理
python_way.day5 1.模块3 time,datetime, json,pickle 2.双层装饰器 3.字符串格式化 4.生成器 5.递归 6.模块倒入 7.第三方模块倒入 8.序列化反 ...
- css position 绝对定位和相对定位
position:absolute这个是绝对定位:是相对于浏览器的定位.比如:position:absolute:left:20px;top:80px; 这个容器始终位于距离浏览器左20px,距离浏览 ...
- SecureCRT显示中文和语法高亮
因为默认情况下,SecureCRT不能显示语法高亮特性,整个界面颜色单一,看起来不爽,也没有效率,所有通过设置一下语法高亮还是很有必要的, 默认字体也看着不是很清晰,还是更改为我比较喜欢的Courie ...
- input与lable水平对齐
CSSinput,label { vertical-align:middle;} html 格式 <label><input/></label> <labe ...
- compile,build和execute的区别
一个c程序的生成要经历以下步骤: 1.编写文本代码,生成c或cpp文件,这时候它还是文本的: 2.编译,就是compile,由c编译程序对你写的代码进行词法和句法分析,发现并报告错误,有错时编译不能通 ...