简介

Git是分布式版本控制系统,使用C语言开发的CVS、SVN是集中式的版本控制系统,集中式的版本控制系统不但速度慢,而且必须联网才能使用。 Git是分布式版本控制系统,同一个Git仓库,可以

分布到不同的机器上。怎么分布呢?最早,肯定只有一台机器有一个原始版本库,此后,别的机器可以“克隆”这个原始版本库,而且每台机器的版本库其实都是一样的,并没有主次之分。

-------------------------

⚠️安装所有的版本控制系统,其实只能跟踪文本文件的改动,比如TXT文件,网页,所有的程序代码等等,Git也不例外。版本控制系统可以告诉你每次的改动,比如在第5行加了一个单词“Linux”,

在第8行删了一个单词“Windows”。而图片、视频这些二进制文件,虽然也能由版本控制系统管理,但没法跟踪文件的变化,只能把二进制文件每次改动串起来,也就是只知道图片从100KB改成了

120KB,但到底改了啥,版本控制系统不知道,也没法知道。

-------------------------

Git支持多种协议,默认的git://使用ssh,但也可以使用https等其他协议。使用https除了速度慢以外,还有个最大的麻烦是每次推送都必须输入口令,但是在某些只开放http端口的公司内部就

无法使用ssh协议而只能用https,通过ssh支持的原生git协议速度最快。

-------------------------

Git可以在Linux、Unix、Mac和Windows这几大平台上正常运行。

Mac OS X上安装Git

方法一:通过homebrew安装

homebrew install git

方法二:通过Xcode安装,Xcode集成了Git,不过默认没有安装,你需要运行Xcode,选择菜单“Xcode”->“Preferences”,在弹出窗口中找到“Downloads”,选择“Command Line Tools”,点“Install”就可以完成安装了。

集中式和分布式

集中式版本控制系统

版本库是集中存放在中央服务器的,而每个人工作的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器

缺点:

  • 必须联网才能工作,如果网速慢上传文件需要很久

  • 中央服务器要是出了问题,所有人都没法干活了

分布式版本控制系统

没有“中央服务器”,每个人的电脑上都是一个完整的版本库,所以工作的时候就不需要联网了。

优点:

  • 安全性要高很多

最新文章

  1. LAMP布署笔记
  2. java 中hashmap和hashtable的区别
  3. [codevs1029]遍历问题
  4. phpstorm取消自动保存并标识修改的文件为星星标记
  5. mac osx 启动wireshark闪退
  6. 9款精致HTML5/jQuery日历时钟控件源码下载(源码请见百度云) 链接:http://pan.baidu.com/s/1geIXe75 密码:7m4a
  7. 最短路径BellmanFord , Dijsktra
  8. START167 AND BOOT167
  9. 关于初学者上传文件到github的方法
  10. DHCP详解
  11. Redis 基础数据结构与对象
  12. HTML学习笔记 css定位(静态,相对,固定,绝对布局)偏移案例 第十二节 (原创) 参考使用表
  13. win10 uwp 横向 AppBarButton
  14. vue配置jquery和bootstarp
  15. windows server r2 安装vs2017 更新补丁Windows8.1-KB2919355-x6
  16. Maven父工程
  17. IOS 学习 Key-value coding
  18. C# 在EF中直接运行SQL命令
  19. hbase orm中间层hbasedao
  20. 初步认识CNN

热门文章

  1. Nginx常见配置
  2. LeetCode 199. 二叉树的右视图(Binary Tree Right Side View)
  3. Ansible 快速安装配置,常用模块
  4. [学习笔记] MRF 入门
  5. jquery注册验证的写法
  6. Response.AddHeader("Content-Disposition", "attachment; filename=" + file.Name) 中文显示乱码
  7. T89379 【qbxt】复读警告
  8. Visual Studio Code-Vscode下快速补全新建HTML文件默认代码
  9. ORA-00600: internal error code, arguments: [kdBlkCheckError]
  10. [Python]python-jenkins 启动需要参数的job