Git(一):Git与版本号控制简单介绍
Intro
Git是什么
- 分布式体系结构:能够全然断网工作,不受网络连接的限制
- 分支与合并操作非常easy:创建分支简单、经济、高速,Git仅仅会保存与主干的差异,这与其它版本号控制系统不一样。
Git把分支上全部修改合并回父分支,即使多次。也仅仅是一眨眼的功夫
- 跟Subversion进行交互:Git能够从SubVersion的版本号库中导入全部的历史,并把你在Git中的修改发送回Subversion的版本号库
版本号库
一种是集中式版本号库(Centralized Repository),全部的程序猿都会把他们的改动提交到server上的一个公共版本号库。详细来说,每个程序猿在本地有一个工作文件夹树,其内容是该版本号库中最新的代码。
当他们在工作文件夹树中完毕代码的改动后。就把改动提交回该版本号库中。这样的方式有一定局限性,在本地工作文件夹树中。仅仅能看到代码的最新版本号。假设想查询历史改动记录,就必须与server上的版本号库打交道,就必需要使用网络。
假设没有网络,也无法记录当前已改动后的项目版本号。
那么git是如何将本地的改动上传到项目的主版本号库中的呢?有两种方式:1.
通过push操作直接把改动上传到主版本号库。2.生成包括少量改动的补丁包,把补丁包提交给项目维护人员。再由他更新主版本号库。
工作文件夹树
代码改动与文件同步
除了记录修改内容本身外。版本号库还记录修改的日志信息(log
message)或称提交留言(commit message),这是代码的变动原因。
为此,须要把变动推入(push)上游版本号库(upstream repository)。
上游版本号库是一个公共版本号库。
第一步。把修改取来(Fetch),把远程版本号库中的版本号和分支拷贝到本地版本号库中。第二步。在本地版本号库中,把从远程版本号库里取来的修改与自己本地的修改合并(Merge)。一般来说,取来操作和合并操作总是先后运行的。因此,在Git中可以用一个命令完毕这两步操作:拖入(Pull)。
标签
分支
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvVHJveV9f/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
.png)
甚至。你也能够把分支看成是还有一个主干。别人能够从你的分支上再拉取一个分支。
合并
总结
Git(一):Git与版本号控制简单介绍的更多相关文章
- eclipse中使用git进行版本号控制
协作开发的时候没有版本号控制是非常痛苦的事情,使用git能够非常好的完毕这项任务,由于非常多的开源码都在github上公布,因此学会使用git是非常重要的一项技能. 这篇写的是在eclipse下使用的 ...
- 云盘+Git GUI实现云盘文件版本号控制
以下介绍操作细节 1.先下载Git GUI 下载地址:http://msysgit.github.io/ 再下载百度云网盘 下载地址:http://pan.baidu.com 接下来就是安 ...
- Git版本号控制 为什么那么复杂 头大 (忍不住强烈吐槽)
想把自己的源代码保存到云端.想到了用Github.com,然后便開始看怎么使用GIT. 一開始,没有接触之前,想的非常easy的.应该就跟SVN几乎相同吧.写好了提交就能够了. 只是使用了之后才发现根 ...
- 版本号控制-git(二)
上次文章给大家介绍了Git的一些基本知识(http://www.cnblogs.com/jerehedu/p/4582398.html).并介绍了使用git init初始化化版本号库.使用git ad ...
- Git学习笔记1--Git原理简单介绍
Git是一个分布式的版本号控制工具,假设想用github等版本号控制系统,核心就是git,以下简介一些git的基础原理,原文:http://git-scm.com/book/en/Getting-St ...
- Git的简单介绍
每次看到别人写Git的文章,同学中也有用Git感觉很高大上的感觉,工作中用的是SVN,周末倒腾了一下Git,Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目.Git 与 ...
- Git版本号控制:Git分支处理
http://blog.csdn.net/pipisorry/article/details/46958699分支的意义创建分支能够避免提交代码后对主分支的影响,同一时候也使你有了相对独立的开发环境. ...
- Git版本号控制
Git是分布式版本号控制系统.与SVN类似的集中化版本号控制系统相比.集中化版本号控制系统尽管可以令多个团队成员一起协作开发,但有时假设中央server宕机的话,谁也无法在宕机期间提交更新和协 ...
- Git简单介绍以及使用入门
Git Git:分布式版本控制系统, 此外还有 SVN (集中式版本控制系统) 下载地址(阿里云镜像) :CNPM Binaries Mirror (npmmirror.com) Git Bash : ...
随机推荐
- 第04章-VTK基础(4)
[译者:这个系列教程是以Kitware公司出版的<VTK User's Guide -11th edition>一书作的中文翻译(出版时间2010年,ISBN: 978-1-930934- ...
- OC对象:封装、继承、多态的使用举例一
// 该代码在网上找的视频中的例子,感觉很适合类和对象分不清楚的同学参考,仅供学习分享,谢谢 // 创建一个Pointtest类,用属性x.y表示点的坐标位置,求两点之间的距离,使用两种方法:类方法和 ...
- 最强烈推荐-我的java收藏夹(内有国内最好的java论坛)
原地址: http://bbs.chinaitlab.com/dispbbs.asp?boardid=148&id=34276 国内: www.chinajavaworld.com-论坛人很多 ...
- SAR ADC : 逐次逼近寄存器型(SAR)模数转换器(ADC)
1.为实现二进制搜索算法,N位寄存器首先设置在中间刻度(即:100... .00,MSB设置为1).这样,DAC输出(VDAC)被设为VREF/2,VREF是提供给ADC的基准电压.然后,比较判断VI ...
- [Leetcode] Two Sum (C++)
我在Github上新建了一个解答Leetcode问题的Project, 大家可以参考, 目前是Java 为主,里面有leetcode上的题目,解答,还有一些基本的单元测试,方便大家起步. 题目: Gi ...
- jQuery插件开发入门
扩展jQuery插件和方法的作用是非常强大的,它可以节省大量开发时间.这篇文章将概述jQuery插件开发的基本知识,最佳做法和常见的陷阱. 入门 编写一个jQuery插件开始于给jQuery.fn加入 ...
- php sscanf() 函数使用
定义和用法 sscanf() 函数根据指定的格式解析来自一个字符串的输入. 如果只向该函数传递两个参数,数据将以数组的形式返回.否则,如果传递了额外的参数,那么被解析的数据会存储在这些参数中.如果区分 ...
- 关于安卓的log学习
什么时候会产生log文件? 1. 程序异常退出 Uncaused Exception. 2. 程序强制关闭 Force Closed(FC). 3. 程序无响应 Application No Resp ...
- 线段树(updata+query)
I Hate It Time Limit: 9000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total S ...
- 【待整理】IOS开发之下载
一.传统的下载文件的方式 - (void)downloaderWithUrl:(NSURL *)url { NSURLRequest *request = [NSURLRequest requestW ...