Tool之Git:Git的简介(功能/Git与SVN区别)、安装、使用方法之详细攻略
目录
Git的简介
Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。
Git的Windows,主要提供一个轻量级的、本土的工具集,使套git单片机Windows而经历了Git用户和新手都提供合适的用户界面的全功能。Git Bash Git为Windows提供了用于从命令行运行Git Bash仿真。*nix用户应该感到宾至如归,为击仿真的行为像“饭桶”命令在Linux和UNIX环境。Git GUI为Windows用户通常期望的图形用户界面,Windows还提供了git git GUI,一个强大的替代Git Bash,提供图形化的版本,几乎每一个Git命令行功能,以及全面的视窗比较工具。外壳程序集成,只需右键单击Windows资源管理器中的文件夹访问Bash或GUI。因为Git是分布式版本控制系统,所以,每个机器都必须自报家门:你的名字和Email地址。
GitHub:使用GitHub经验总结详细攻略(持续更新!)
1、Git的功能
从一般开发者的角度来看,git有以下功能:
- 1、从服务器上克隆完整的Git仓库(包括代码和版本信息)到单机上。
- 2、在自己的机器上根据不同的开发目的,创建分支,修改代码。
- 3、在单机上自己创建的分支上提交代码。
- 4、在单机上合并分支。
- 5、把服务器上最新版的代码fetch下来,然后跟自己的主分支合并。
- 6、生成补丁(patch),把补丁发送给主开发者。
- 7、看主开发者的反馈,如果主开发者发现两个一般开发者之间有冲突(他们之间可以合作解决的冲突),就会要求他们先解决冲突,然后再由其中一个人提交。如果主开发者可以自己解决,或者没有冲突,就通过。
- 8、一般开发者之间解决冲突的方法,开发者之间可以使用pull 命令解决冲突,解决完冲突之后再向主开发者提交补丁。
2、 Git与SVN区别
Git 不仅仅是个版本控制系统,它也是个内容管理系统(CMS),工作管理系统等。 如果你是一个具有使用 SVN 背景的人,你需要做一定的思想转换,来适应 Git 提供的一些概念和特征。
Git | SVN | |
是否分布式 | Git 是分布式的,这是 Git 和其它非分布式的版本控制系统,例如 SVN,CVS 等,最核心的区别。 | 非分布式 |
存储方式 | 把内容按元数据方式存储 | 按文件 所有的资源控制系统都是把文件的元信息隐藏在一个类似 .svn、.cvs 等的文件夹里。 |
分支 | Git 分支和 SVN 的分支不同 | 分支在 SVN 中一点都不特别,其实它就是版本库中的另外一个目录。 |
版本号 | Git 没有一个全局的版本号 目前为止这是跟 SVN 相比 Git 缺少的最大的一个特征。 | 拥有全局的版本号 |
内容完整性 | Git 的内容完整性要优于 SVN Git 的内容存储使用的是 SHA-1 哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本 库的破坏。 | 一般 |
Git的安装
1、windows系统下安装
第一步,安装 Git
下载地址:Git - Downloads
从 Git 的官方网站 (Git - Downloads) 下载,并安装 Git。安装完成后,请确保在命令行终端中可以使用 git 命令。
默认选项安装即可。安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功!
更多详细步骤如下
第二步,将 Git 添加到系统路径中
一般情况下,安装的时候会自动添加,如果发现没有,可自行添加系统环境变量
第三步,命令测试
大功告成!哈哈!
2、Ubuntu系统下安装
sudo apt install git
Git使用方法
1、基本使用方法
git clone xxx.git #最简单直接的命令
git clone xxx.git "指定目录" #如果想clone到指定目录。例如git clone https://github.com/pjreddie/darknet "F:\Program Files\Python\Python36\Lib\site-packages\darknet"
git clone -b [new_branch_name] xxx.git #clone时创建新的分支替代默认Origin