每次看到别人写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的简单介绍的更多相关文章

  1. eclipse IDE使用git方法简单介绍

    eclipse下使用git插件上传代码至github 1.eclipse下安装git eclipse  git 插件的安装. 点击 Help->Install New Software-> ...

  2. 项目管理---git----快速使用git笔记(一)------git的简单介绍

    最近svn代码管理服务器崩溃了,切换到git来运作. 经过几天的使用,感觉很不错. 尤其是代码合并到正式版本之前 可以对代码进行 code review. 这样能很好的保证团队的代码质量和一些重复代码 ...

  3. Git——Git的简单介绍【一】

    官方网站 Git官网 https://git-scm.com/ GitHub https://github.com GitLab https://about.gitlab.com/ SVN https ...

  4. linux下git的简单运用

    linux下git的简单运用 windows下也有git,是git公司出的bash,基本上模拟了linux下命令行.许多常用的命令和linux下操作一样.也就是说,windows下的git命令操作和l ...

  5. osc的git服务器简单使用。

    1.创建本地仓库 mkdir dir cd dir git init 初始化仓库 2.创建远程仓库 进入远程仓库去创建 3.关联本地仓库与远程仓库 git remote add osc git::.. ...

  6. 攻城利器 —— Carthage简单介绍

    01 Carthage简单介绍 主页:https://github.com/Carthage/Carthage.git 作者:Justin Spahr-Summers等 版本:0.18 目标:用最简单 ...

  7. [转] Portable Trac 简单介绍 - 兼谈为什么不选择 Redmine

    Portable Trac 简单介绍 - 兼谈为什么不选择 Redmine ​Trac是一个轻量级的软件项目管理环境,如果在工作中涉及一个开发团队的管理并且关心项目管理工具的话,相信都在 ​Trac. ...

  8. Git 的简单使用

    一直在使用Git,仅限于简单的使用,但还是记不住几个简单.在这边总结一下,加深印象,也方便查找. 安装Git 平常主要在windows和ubuntu上工作,就以windows为例,Linux和Mac平 ...

  9. app 下载更新 file-downloader 文件下载库的简单介绍和使用

    app 下载更新 file-downloader 文件下载库的简单介绍和使用 今天介绍一个下载库:file-downloader 文件下载库 说明: * 本文内容来自原 file-downloader ...

随机推荐

  1. js数组乱序输出 数组乱序排列

    网上看的数组乱序输出,要么不合实际,要么代码繁琐.自己试了下,希望能给大家带来帮助. 重要思想也是Math.random*arr.length随机下标,然后删除取到的元素,继续随机下标. //将数组乱 ...

  2. Highmaps网页图表教程之下载Highmaps与Highmaps的地图类型

    Highmaps网页图表教程之下载Highmaps与Highmaps的地图类型 认识Highmaps Highmaps是Highcharts的姊妹框架,用来实现地图图表.它完全使用Javascript ...

  3. python 发送邮件(收到的邮件要有发送方才能回复)

    Python使用SMTP(简单邮件传输协议)发送邮件 普通文本邮件 普通文本邮件发送的实现,关键是要将MIMEText中_subtype设置为plain ## -*- coding: UTF-8 -* ...

  4. python opencv3 FLANN单应性匹配

    git:https://github.com/linyi0604/Computer-Vision 匹配准确率非常高. 单应性指的是图像在投影发生了 畸变后仍然能够有较高的检测和匹配准确率 # codi ...

  5. python opencv3 滤波器 卷积核

    git:https://github.com/linyi0604/Computer-Vision # coding:utf8 import cv2 import numpy as np from sc ...

  6. 直接插入排序(初级版)之C++实现

    直接插入排序(初级版)之C++实现 一.源代码:InsertSortLow.cpp /*直接插入排序思想: 假设待排序的记录存放在数组R[1..n]中.初始时,R[1]自成1个有序区,无序区为R[2. ...

  7. 【扩展欧几里得】codevs1200-同余方程

    [题目大意] 求关于 x 同余方程 ax ≡ 1 (mod b)的最小正整数解. [思路] 求解ax+by=1,只要x<0就不断加上 b. #include<iostream> #i ...

  8. 为什么Android手机总是越用越慢?

    根据第三方的调研数据显示,有77%的Android手机用户承认自己曾遭遇过手机变慢的影响,百度搜索“Android+卡慢”,也有超过460万条结果.在业内,Android手机一直有着“越用越慢”的口碑 ...

  9. java 中常用的类

    java 中常用的类 Math Math 类,包含用于执行基本数学运算的方法 常用API 取整 l  static double abs(double  a) 获取double 的绝对值 l  sta ...

  10. BZOJ 4554: [Tjoi2016&Heoi2016]游戏 二分图匹配

    4554: [Tjoi2016&Heoi2016]游戏 题目连接: http://www.lydsy.com/JudgeOnline/problem.php?id=4554 Descripti ...