Git的简单介绍
每次看到别人写Git的文章,同学中也有用Git感觉很高大上的感觉,工作中用的是SVN,周末倒腾了一下Git,Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git 与其他的版本控制工具 CVS, SVN,VSS相比,它采用了分布式版本库的方式,可以离线提交代码,代码保存在本地,可以享受SVN联网能进行的一系列操作,如果你需要推送到服务器只需要push一下即可,每个人都是一个独立的仓库。
Git的由来
说到Git,不得不提的一个人是Linus Torvalds,Linus跟Linux差了一个字母,这哥们就是Linux的核心作者,芬兰人,现在随着Linux和Git的迅猛发展,大家都对Linus大牛的了解就更深刻一些。从91开始创建了开源的系统软件Linux一直到2002年,Linus一直都是手动的合并代码,,哥们手动了十年,抛开技术不谈,就这个耐性就值得佩服。Linus认为CVS集中式控制太慢不适合控制,而且需要联网,后来2000年出现的SVN也同样找到了Linus的弃用,2002年的时候由于Linux发展的原因,手工合并代码太慢采用了商业系统软件BitKeeper,Linus一直使用BitMover公司的BitKeeper SCM(软件配置管理)进行Linux运行管理。Linus在一份声明中曾表示,“我一向不热衷于开发开放源控制工具,而现在正是这一缺憾阻碍了我跟大多同行的交流。”他说,“BitKeeper正好解决了这一燃眉之急,使得工作效率倍增,其可复制传播的本性方便我与任意同行之间交流和合作。”
当然,并不是每一位自由软件或开放社区人士都与托沃兹一样喜欢BitKeeper,因为它是享有知识产权的一套程序。使用拥有知识产权的工具来管理开放源软件的开发早已引发了激烈的争议。事实上,持有不同意见的主要是开放社区的两大阵营,一个是以Linus为代表的实用主义者,他们主张只要是合适的工具就拿来使用,不管是版权产品还是开放软件;而另一阵营是以理查德·斯托尔曼(Richard Stallman)为代表的纯自由软件论者,他们认为使用版权软件违背了自由软件的本质。
在有关开放源社区是否应该对BitKeeper进行“逆向工程”的争议进行之时, Samba CIFS(通用因特网文件系统)服务器项目的联合创始人Andrew Tridgell开发了一款新程序SourcePuller,与BitKeeper数据通用。Tridgel作为OSDL(开放源开发实验室)的第二任掌门人,追随者自然是有样学样。这个时候BitMover非常愤怒,收回来商业版BitKeeper在Linux的使用权,与之对应的提供了一个功能相对差点的Linux开源版本,并威胁说“如果你开发类似的软件,就不能使用BP”
自此Linus对BP好感全无,闭关修炼两周之后用C写了额一个分布式控制系统(C没学好的我只能仰望了),之后的Linux的系统源码就由Git管理了,Git成为最流行的分布式版本控制系统GitHub在2008年上线之后它为开源项目免费提供Git存储,无数开源项目开始迁移至GitHub,包括jQuery,PHP,Ruby on Rails,Android,YUI等。
Window下的Git
原本Git的使用范围只适用于Linux/Unix平台,但在Windows平台使用其工作的时候需要Cygwin这样的模拟环境,Git也一样。Cygwin的安装和配置都比较复杂(我没弄过),后来Google把模拟环境和Git都包装好了发布了一个msysgit的针对Window的客户端(我想说微软哪里去了),最开始托管在code.google.com,现在源码和下载程序托管在http://msysgit.github.io/。
下面放一下自己的安装过程吧:
我下载的是最新的1.9.4
基本信息介绍,直接next:
选择路径之后直接next:
将图标放在桌面,方便使用,next:
默认的使用Git Bash进行版本控制:
默认的window窗体样式:
d
等待几分钟:
安装完成:
最后测试一下是否成功,双击Git Bash,红色是计算机名,如果出现了则证明安装成功了:
Git的简单介绍的更多相关文章
- eclipse IDE使用git方法简单介绍
eclipse下使用git插件上传代码至github 1.eclipse下安装git eclipse git 插件的安装. 点击 Help->Install New Software-> ...
- 项目管理---git----快速使用git笔记(一)------git的简单介绍
最近svn代码管理服务器崩溃了,切换到git来运作. 经过几天的使用,感觉很不错. 尤其是代码合并到正式版本之前 可以对代码进行 code review. 这样能很好的保证团队的代码质量和一些重复代码 ...
- Git——Git的简单介绍【一】
官方网站 Git官网 https://git-scm.com/ GitHub https://github.com GitLab https://about.gitlab.com/ SVN https ...
- linux下git的简单运用
linux下git的简单运用 windows下也有git,是git公司出的bash,基本上模拟了linux下命令行.许多常用的命令和linux下操作一样.也就是说,windows下的git命令操作和l ...
- osc的git服务器简单使用。
1.创建本地仓库 mkdir dir cd dir git init 初始化仓库 2.创建远程仓库 进入远程仓库去创建 3.关联本地仓库与远程仓库 git remote add osc git::.. ...
- 攻城利器 —— Carthage简单介绍
01 Carthage简单介绍 主页:https://github.com/Carthage/Carthage.git 作者:Justin Spahr-Summers等 版本:0.18 目标:用最简单 ...
- [转] Portable Trac 简单介绍 - 兼谈为什么不选择 Redmine
Portable Trac 简单介绍 - 兼谈为什么不选择 Redmine Trac是一个轻量级的软件项目管理环境,如果在工作中涉及一个开发团队的管理并且关心项目管理工具的话,相信都在 Trac. ...
- Git 的简单使用
一直在使用Git,仅限于简单的使用,但还是记不住几个简单.在这边总结一下,加深印象,也方便查找. 安装Git 平常主要在windows和ubuntu上工作,就以windows为例,Linux和Mac平 ...
- app 下载更新 file-downloader 文件下载库的简单介绍和使用
app 下载更新 file-downloader 文件下载库的简单介绍和使用 今天介绍一个下载库:file-downloader 文件下载库 说明: * 本文内容来自原 file-downloader ...
随机推荐
- python 创建项目
项目骨架 nose 测试框架 Windows 10 配置 创建骨架项目目录 Windows 10 的 PowerShell mkdir projects cd projects/ mkdir skel ...
- MySQL 关于索引那点事
索引 其实数据库中的数据是按页存放的其实索引也是按页存放的所以本质上索引也占硬盘空间(以最小的消耗,换取最大的利益) 索引是一种有效组合数据的方式!为快速查找到指定记录做铺垫 目的就是快速或者某个记录 ...
- odoo发送信息到微信公众平台、企业微信
目录 odoo发送信息到微信 @(odoo client.message.send_text) odoo发送信息到微信 在odoo平台中进行项目开发的时候有时会用到跟其他平台对接发送信息. 这里我写一 ...
- Linux驱动程序中的并发控制
<临界区> a:对共享资源进行访问的代码称为临界区. <原子操作> a:原子操作用于执行轻量级,仅仅执行一次的的操作比如修改计数器,有条件的增加值,设置某一位.所谓 ...
- linux驱动之一语点破天机
<const 关键字> 在嵌入式系开发中,const关键字就是“只读”的意思 <为什么要ARM需要进行C语言环境的初始化> 在汇编情况下,指令的跳转,保护现场需要保存的数据 ...
- SPOJ QTREE
QTREE /* 题目大意:维护一棵树,允许修改边权以及查询链上最大值 题解:我们将边权转为点权,标记在深度较深的点上,树链剖分后用线段树处理即可 */ #include <cstdio> ...
- POJ 2778 DNA Sequence(AC自动机+矩阵)
[题目链接] http://poj.org/problem?id=2778 [题目大意] 给出一些字符串,求不包含这些字符串的长度为n的字符串的数量 [题解] 我们将所有串插入自动机计算match,对 ...
- [CodeForces-585F]Digits of Number Pi
题目大意: 给你一个数字串s,一个序列范围l和r,(l和r的数字位数为d)求l到r中有多少个数,满足它的长度为d/2的子串,能够在s中被匹配. 思路: 首先将s中每一个长度为d/2的子串插入后缀自动机 ...
- AbstractAction
package cn.tz.action.abs; import java.io.File; import java.io.IOException; import java.text.SimpleDa ...
- maven打包出错: Failed to clean project: Failed to delete
maven打包出错: Failed to clean project: Failed to delete 出现这种错误,通常是由于您已启动了另一个tomcat 进程,导致报错,关闭tomcat进程即可 ...