1 Git简介

Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。 Git是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件

Git也是目前最流行的分布式版本控制系统,它和其他版本控制系统的主要差别在于Git只关心文件数据的整体是否发生变化,而大多数版本其他系统只关心文件内容的具体差异,这类系统(CVS,Subversion,Perforce,Bazaar 等等)每次记录有哪些文件作了更新,以及都更新了哪些行的什么内容。

1.1 Git特性

  • 分布式:Git版本控制系统是一个分布式的系统,是用来保存工程源代码历史状态的命令行工具。
  • 保存点:Git的保存点可以追踪源码中的文件, 并能得到某一个时间点上的整个工程项目的状态;可以在该保存点将多人提交的源码合并, 也可以回退到某一个保存点上。
  • Git离线操作性:Git可以离线进行代码提交,因此它称得上是完全的分布式处理,Git所有的操作不需要在线进行;这意味着Git的速度要比SVN等工具快得多,因为SVN等工具需要在线时才能操作,如果网络环境不好, 提交代码会变得非常缓慢。
  • Git基于快照:SVN等老式版本控制工具是将提交点保存成补丁文件,Git提交是将提交点指向提交时的项目快照,提交的东西包含一些元数据(作者,日期,GPG等)。
  • Git的分支和合并:分支模型是Git最显著的特点,因为这改变了开发者的开发模式,SVN等版本控制工具将每个分支都要放在不同的目录中,Git可以在同一个目录中切换不同的分支。
  • 分支即时性:创建和切换分支几乎是同时进行的,用户可以上传一部分分支,另外一部分分支可以隐藏在本地,不必将所有的分支都上传到GitHub中去。
  • 分支灵活性:用户可以随时创建、合并、删除分支,多人实现不同的功能,可以创建多个分支进行开发,之后进行分支合并,这种方式使开发变得快速、简单、安全

1.2Git优缺点

  优点

  • 适合分布式开发,强调个体。
  • 公共服务器压力和数据量都不会太大。
  • 离线工作、速度快、灵活。
  • 任意两个开发者之间可以很容易的解决冲突

  缺点

  • 不符合常规思维。
  • 代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息

2 Git客户端下载

1.2.1下载地址

Git客户端官网下载链接:https://git-scm.com/downloads

1.2.2 选择操作系统

根据自己要安装的目标操作系统,选择对应的下载源。这里以Windows X64为例

:如果觉得官网下载比较慢,可在网络上寻找下载资源

3 Git客户端安装

3.1 Git客户端安装

  • 双击“Git-2.17.0-64-bit.exe”,进入安装导向界面,点击Next>

  • 点击Next>

  • 选择组建安装,默认配置即可,点击Next>

  • 开始菜单快捷方式目录,默认配置即可,点击Next>

  • 选择默认的编辑器:Vim,点击Next>

  • 选择命令行工具,一般选择:User Git from Git Bash only,点击Next>

  • 默认选择,点击Next>

  • 选择换行格式,默认选择,点击Next>

  • 默认选择,点击Next>

  • 默认选择,点击Install

  • 客户端安装完成,点击Finish

3.2 Git客户端配置

为方便后续应用和验证是否安装成功,配置环境变量配置path(本步骤也可不做)

配置好后,在cmd中输入:git --version,如果出现如下信息,即表示安装成功

最新文章

  1. CSS-学习笔记一
  2. JavaScript 基础第一天
  3. 使用oracle的大数据工具ODCH访问HDFS数据文件
  4. js中特有语句-with
  5. MySQL Cluster(MySQL 集群) 初试(转)
  6. 计算机视觉入门 Intorduction To Computer Vision
  7. Linux 修改默认文件关联打开程序
  8. Linux学习笔记总结--配置iptables防火墙
  9. 转:Windows 8上强制Visual Studio以管理员身份运行
  10. 用C++编写程序,输出两个字符串的最大公共子字符串
  11. VMware NAT端口映射外网访问虚拟机linux
  12. vscode中vue代码颜色插件
  13. mysql中update+select
  14. Linux中cp直接覆盖不提示的方法
  15. Mac Oracle SqlDeveloper 快捷输入
  16. Ubuntu16.04下配置pip国内镜像源加速安装【转】
  17. ApiCloud模块链接
  18. nginx的access_log与error_log(三)
  19. Linux make menuconfig报错 Your display is too small to run Menuconfig!
  20. Shell检查程序是否正常,并显示出程序启动时间、执行时间

热门文章

  1. 【H5 音乐播放实例】第一节 音乐详情页制作(1)
  2. Maven 多模块引用版本的问题 java.lang.NoSuchMethodError
  3. .NET Core 中的路径问题
  4. SQL Server-索引故事的遥远由来,原来是这样的?(二十八)
  5. Python 学习 第十篇:正则表达式 - re
  6. java使用Map做缓存你真的用对了吗?弱引用WeakHashMap了解一下
  7. 多项式求值 n维多项式 Horner解法
  8. c++ 入门之深入探讨拷贝函数和内存分配
  9. 网工的Linux系统学习历程
  10. Xcode中控制台中打印中文处理