目录
1、版本控制
1.1、本地版本控制
1.2、集中版本控制 – -SVN
1.3、分布式版本控制 – -Git
2、核心知识
3、基础文件命令
4、基础配置
4.1、查看配置 :git config -l
4.2、系统配置:git config –system –list
4.3、本地配置:git config –global –list
4、项目搭建
4.1、本地仓库搭建
5、基本操作命令
5.1、基本步骤实现
5.2、提交日志的相关命令
5.3、回退版本
5.4、添加文件至忽略列表
5.5、忽略文件的常见格式
5.6、删除一次提交
5.7、误删后如何恢复
Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。
在团队开发中git是必不可少的,它是目前为止最流行的版本控制工具
1、版本控制
版本控制:是在开发过程中用于管理我们对文件、目录、工程等内容的修改历史,方便查看历史更改纪录,备份以便以前的版本。
实现跨区域多人协同开发
追踪和记载一个或多个文件的历史记录
保护源代码和文档
统计工作量
并行开发,提高效率
追踪记录整个软件的开发过程
1.1、本地版本控制
记录文件的每次更新,可以对每个版本做一次备份,适合个人
1.2、集中版本控制 – -SVN
所有版本数据都保存在服务器上,协同者从服务器上同步更新或上传自己的修改
需要联网才可以看到
集中式版本控制系统,都有一个统一的版本号,放在一个统一的服务器上,工作时把最新的版本的代码拉取到电脑上,代码完成后在把写完的代码推送到服务器上,由于所有的操作都需要服务器的支持,对网络要求比较大,而且如果服务器里的数据出了问题,那么所有的数据都会丢失,本机客户端仅保存当前版本的信息。
1.3、分布式版本控制 – -Git
分布式版本控制系统,每个人的电脑都相当于服务器,当你拉取仓库的代码后,你的电脑就是一个完整的版本库,工作时不需要联网,所有版本都在自己的本机里,当你想把自己的代码提交到主仓库时,只需要在联网时合并推送到主仓库就可以了。
2、核心知识
git在本地分为三个区域,分别为工作区、缓存区和资源区(本地),其实还有一个远程的一个仓库区,但不在本地就不做过多解释
工作区:平时放项目代码的地方,包括git已经管理的文件区域和新增以及修改的文件区域
缓存区:用于临时存放改动的代码,它本质上是一个文件,把工作区的部分或者全部已经确认需要保存的文件提交至暂存区,先保存一下,如果确认好了可以直接提交到本地仓库中,如果暂时不能做决定可以暂时先放到暂存区,等待下一步操作。
资源区:又称作版本库或仓库区,将某一个历史节点的保存文件列表当做是一个版本,这里面有你提交到所有版本的数据,其中的HEAD指针默认指向最新放入仓库的版本
仓库区:远程的仓库,托管代码的服务器,可以是Gitee、GitHub
git的工作流程:
在工具区中增加或修改文件
将新的版本代码添加到缓存区 git add .
将缓存取得文件提交到远程仓库 git commit
3、基础文件命令
Git Bash :命令和Linux相似
cd :改变目录
cd . . :回退上一级目录
pwd :显示当前所在目录路径
ls\ll :列出当前目录中的所有文件
touch : 新建一个文件
rm :删除一个文件
mkdir :新建一个文件夹
rm -r :删除一个文件夹
mv :移动文件
reset :清屏、初始化
clear :清屏
history :查看历史命令
exit :与i出
4、基础配置
设置用户名和密码:
git config –global user.name “moon” // 设置全局用户名
git config –global user.email “2597213671@qq.com” // 设置邮箱
这里的 –global 为全局配置,如果要在特定的的项目中使用不同的名称,那就不使用该参数,只为当前所在仓库配置。
Git相关的配置文件:
全局配置文件:C:\Users\你的用户名\.gitconfig
系统配置文件:你的安装目录\Git\etc\gitconfig
4.1、查看配置 :git config -l
4.2、系统配置:git config –system –list
查看系统配置
4.3、本地配置:git config –global –list
查看当前用户配置
4、项目搭建
4.1、本地仓库搭建
两种方式:
创建一个新仓库
你需要新建一个存放版本库的目录,然后进入到该目录所在路径,然后执行:
如果在目录中看到包含有.git的隐藏目录,那就证明创建成功
# 在当前目录新建一个Git代码库
git init
克隆远程仓库
# 克隆一个项目和它的所有版本信息
git clone [url] # https://gitee.com/xuande-hk/xuande-hk.git
5、基本操作命令
用git命令控制git工作目录下文件状态的转换
1、git add (工作区 – -> 暂存区)
2、git commit (暂存区 – -> 本地仓库)
Clone:克隆,就是将远程仓库复制到本地仓库 Push:推送,就是将本地仓库代码上传到远程仓库 Pull:拉取,就是将远程仓库代码下载到本地仓库,并将代码 克隆到本地工作区
5.1、基本步骤实现
1、创建——touch ttt.txt
2、查看状态——git status
3、将文件所有的修改添加到暂存区——git add 文件名|通配符.
3、提交文件到仓库——git commit -m “注释内容”
4、查看文件提交日志——git log
5、文件修改后的提交——git commit -m “update ttt”
1)创建文件,查看状态
目前文件位于本地仓库下
2)文件添加到暂存区
3)暂存区提交到本地仓库
4)查看文件提交日志
5)文件修改后重新提交
5.2、提交日志的相关命令
命令形式:git log [option]
option:
–all:显示所有分支
–pretty=oneline:将信息提交为一行
–abbrev-commit:使得输出的更简短
–graph:以图的形式显示
1)git log命令
提交次数过多的话,信息太过钻乱
2)git log –pretty=oneline命令
设置行数为一行
3)git log –pretty=oneline –abbrev-commit命令
优化
git log –pretty=oneline –abbrev-commit –all
5.3、回退版本
版本切换命令:git reset –hard [commitID]
将命令输入后,版本会回退到文件创建状态,修改的内容就没了
查看已经删除的提交记录
git reflog
5.4、添加文件至忽略列表
1)创建一个.gitignore文件
2)输入内容*.a
表示后缀名为.a的文件不需要git管理
5.5、忽略文件的常见格式
# 所有以.a 结尾的文件讲被忽略(递归)
*.a
# 不管其他规则怎样,强制不忽略 lib.a
!lib.a
# 只忽略 文件 TODO (注意这里是文件)
/TODO
# 忽略 build文件夹下所有内容(递归) 这里是文件夹
build/
# 忽略 doc 目录下以 *.txt 结尾的文件 (不递归)
doc/*.txt
# 忽略 doc 目录下以 *.pdf 结尾的文件 (递归)
doc/**/*.pdf
5.6、删除一次提交
1)git log找到要删除的提交的上一次提交的id
2)命令:git rebase -i 9a3f2a7e0e5d39ff0e2527b42f6fb10c00b4a758
3)输入i进入编辑模式
将pick改成drop
5.7、误删后如何恢复
查看日志找到提交id
回退:git reset –hard 08428f6
————————————————
版权声明:本文为CSDN博主「仰望-星空~~」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_65935065/article/details/130714385