【声明】本教程参考自https://www.bilibili.com/video/BV1Zz4y1C7vg?p=17
官网下载即可。https://git-scm.com/
在文件夹里,右键 Git Bash Here 右键选择Options。进入以后先对字体和编码进行设置。
在git中命令和Linux是一样的:
git --version
clear 不小心在输入某些命令期间按了回车,出现了大于号,Ctrl+C即可退出。
设置用户名和邮箱 git config --global user.name "albert" ** git config --global user.email “1561235929@ qq.com” **
git init 如果git目录是隐藏的: 可以在查看中设置 或者用命令查看 ll -la 现在可以直接用命令查看: ll 注意事项:git目录下的本地库相关的子目录和子文件不要删除,不要胡乱修改。
添加文件:add 提交文件:commit
可以手动创建,也可以输入 touch Demo.txt 如果要查看文件内容,可以输入: cat 【文件名】 黄色框里的就是文件的内容。
命令:git commit -m"文档的注释" Demo.txt Demo.txt可以替换为其他文件名。 总结一下这一步的过程:
查看工作区和暂存区的状态 命令:git status 新建一个文件Demo2.txt
没有被添加和提交的,会提示。
然后将Demo2.txt添加到暂存区,查看状态 利用git commit 命令将文件提交至:本地库 现在修改Demo2.txt文件中的内容: 然后查看状态:
重新添加至:暂存区: 查看状态: 然后将暂存区的文件提交到本地库: 查看状态: 没有东西待提交,文件已经全部更新到本地库了。
git log可以让我们查看提交的,显示从最近到最远的日志 可以先clear一下,然后git log:
创建了10个Demo,add并commit进本地库 当历史记录过多时,查看日志的时候,有分页的效果,分屏的效果,一页展示不下: 下一页:空格 上一页:b 到尾页了,显示END 退出:q 日志展示方式: 【1】方式1:git log --》分页 【2】方式2:git log --pretty=oneline 注意空格
【3】方式3:git log --oneline
注意空格,log和–有空格,–与oneline没有空格
【4】方式4:git reflog 多了信息:HEAD@{数字} 这个数字的含义:指针回到当前这个历史版本需要走多少步。
reset命令:将某文件前进,或者后退到历史版本
先创建一个test.txt的文件,然后添加和提交到本地库 然后插入内容aaaa,再次添加和提交 然后插入内容bbbb,再次添加和提交 【1】hard参数: 想要回到aaaa版本时,需要 git reset --hard 6ea68f9 其中6ea68f9为版本的索引,通过 git reflog查看 本地库的指针移动的同时,重置暂存区,重置工作区 通过查看git reflog,看指针指向哪个版本。 【2】mixed参数 git reset --mixed 6ea68f9 不常用,形式同hard 本地库的指针移动的时候,重置暂存区,工作区不动。 【3】soft参数 git reset --soft 6ea68f9 也不常用 本地库的指针移动的时候,暂存区,工作区都不懂 总结:以后用的多的就是第一种
【1】先新建个test2.txt,并add到暂存区,再commit提交到本地库
【2】删除工作区中的test2.txt 命令:rm test2.txt
【3】将删除操作同步到暂存区
【4】将删除操作同步到本地库 【5】查看日志 git reflog 【6】找回本地库中删除的文件,实际上回退到历史版本 git reset --hard 版本索引
【1】删除工作区数据 【2】同步到缓存区 【3】后悔了,恢复暂存区中的数据
或者
先新建test3.txt 插入内容aaaa 然后提交到缓存区和本地库
增加内容:bbb
导致:工作区 和 暂存区 不一致,需要比对
将工作区和暂存区中的【文件】进行比较
比较工作区和暂存区中所有文件的差异
比较暂存区历史版本和工作区中的差别 修改test3.txt中的内容为a,并添加到暂存区(添加不添加都不影响比较) git diff 【历史版本的索引d6f5f1c】 test3.txt
在版本控制过程中,使用多条线同时推进多个任务,这里面说的多条线,就是多个分支。
同时多个分支可以并行开发,互相不耽误,互相不影响,提高开发效率 如果有一个分支功能开发失败,直接删除这个分支就可以了,不会对其他分支产生任何影响。
命令:git brach -v
命令:git bracn [分支名字] 再查看:
git checkout branch01 再查看:
查看状态 查看文件内容,发现回到了主分支的内容 增加内容,提交
用cat命令查看文件内容
出现冲突了: 为什么出现冲突问题?在同一个文件的同一个位置修改
解决:公司内部商量,或者自己决定留下哪部分,手动保存。