一、Git 的介绍
git软件的作用:管理软件开发项目中的源代码文件。
常用功能:
仓库管理、文件管理、分支管理、标签管理、远程操作
功能指令:
add,commit,log,branch,tag,remote,status
1.1 SCM:
软件配置管理(Software Configuration Management )
SCM 是指通过执行版本控制、变更控制的规程,以及使用合适的配置管理软件,来保证所有配置项的完整性和可跟踪性。
配置管理是对工作成果的一种有效保护。
1.2 SCM 软件:
需要中央服务器:
- Visual Source Safe:美国微软公司出品的版本控制系统,简称 VSS,集中式版本控制系统。
- 不适合复杂的多人协同开发,软件收费
- Concurrent Versions System:老牌的版本控制系统,它是基于客户端 / 服务器的行为使得其可容纳多用户,构成网络也很方便,简称 CVS
- 支持多人合作,协同开发,但是存在软件编码问题
- Subversion:CVS 的升级版本,开放源代码的版本控制系统,实现共享资源,实现最终集中式的管理
分布式版本控制:
- Git:开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。也是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
版本控制:
集中式版本控制
分布式版本控制
多人协作开发
版本的作用:
保存重要的历史记录
恢复数据
二、Git 概念
1.1 版本控制软件的基础功能
1.保存和管理软件
2.提供客户端工具进行访问
3.提供不同版本文件的比对功能
1.2 集中式版本控制
会出现的问题:文件冲突问题 ——》解决方式:加锁
1.3 分布式版本控制
三、Git 的深入了解
git 官网:https://git-scm.com/
Git 的版本号是:40个16进制的数字组成的版本号(提交码)
3.1 Git 分支原理:
3.2 Git 中的一些信息
版本号:Git 软件根据 SHA-1 算法来获得的,长度是40位
可以避免冲突
可以定位仓库中的文件:2(文件夹)+ 38(文件名)
3.3 git 的一些相关指令:
1. 查看当前 git 的版本:git -v
2. 在当前目录创建我们的仓库:git init
3. 用工具来创建仓库:
4. 克隆远程仓库的内容:git clone 克隆网址
5. 克隆远程仓库的内容并自定义名称:git clone 克隆网址 新名字
6. 查看暂存区状态:git status
7. 将工作区的文件加到暂存区做比对操作:git add 文件名
8. 将暂存区的文件移动到工作区:git rm --cached 文件名
9. 将暂存区文件提交到存储区域:git commit -m 提交信息
10. 查看日志信息:git log
查看日志信息,并以一行进行展示:git log --oneline
11. 把误删除的文件恢复到工作区:git restore 文件名
从历史记录(日志)中恢复【可能会丢失提交过程】:git reset --hard 版本号
12. 把版本库还原到这个版本之前:git revert 版本号
13. 增加分支 (在仓库中有提交后才可以):git branch 分支名
查看分支个数:git branch -v
切换分支:git checkout 分支名
创建分支并切换过去:git checkout -b 分支名
删除分支:git branch -d 分支名
14. 分支的合并和冲突:
合并分支中的内容:git merge 分支名
15. tag 标签操作:
给版本添加标签(但是标签不能重复 ):git tag 标签名 版本号
查看标签:git tag
删除标签:git tag -d 标签名
16. 远程仓库操作:
SSH 地址需要提供安全认证规则。