Git----常用指令及基本语法

Git三部曲:

  • 工作区:存放代码的磁盘的目录
  • 暂存区:得让git知道这个代码文件,因此得将工作区代码[添加](git add)到暂存区(临时存储:这时候删除也没有对应得历史版本)
  • 本地库:将代码从暂存区[提交](git commit)到本地库,一旦提交到本地库,就会产生对应得历史版本,一旦产生历史版本,这个历史版本就删不掉了(后面得版本是基于前面得版本的,所以不能单独的删除前面的版本,除非你删除了整个本地库…)

Git常用指令

命令作用
git config --global user.name 用户名设置用户签名
git config --global user.email 邮箱设置用户签名
git init初始化本地信息
git status查看本地库状态
git add 文件名添加到暂存区
git commit -m “日志信息” 文件名提交到本地库
git reflog查看历史记录
git reset --hard 版本号版本穿梭

签名的作用是区分不同操作者身份。用户的签名信息在每一个版本的提交信息都能看到,以此确认本次提交是谁做的。Git首次安装必须设置一下用户签名,否则无法提交代码

而这个用户签名和登陆代码托管中心无任何关系。只是为了区分用户;

基本语法

git init

想要用git管理目录,就必须让git获取目录的管理权(初始化)

在需要让git管理的目录底下执行 git init,该目录底下会自动生成空的git库,并生成.git文件夹

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mi1vwMIG-1620321948959)(C:\Users\86155\AppData\Roaming\Typora\typora-user-images\1620314591173.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ztS0Ct9f-1620321948961)(C:\Users\86155\AppData\Roaming\Typora\typora-user-images\1620314602844.png)]
在Windows底下这是隐藏文件,需要 查看->勾上隐藏文件
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bctMwXxr-1620321948963)(C:\Users\86155\AppData\Roaming\Typora\typora-user-images\1620314997421.png)]
在Git bash进入.git可以查看到git库已经初始化好了(看隐藏文件ll -a)

git status

查看git库的状态[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-umUUo44y-1620321948964)(C:\Users\86155\AppData\Roaming\Typora\typora-user-images\1620315250732.png)]
这个master就是我们安装时候设置的默认分支

No commits yet:没有东西提交到git库(空的git库)

nothing to commit:没有东西“可提交”(啥文件都没创建)

此时可以在.git文件里边创建文件
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DDb2PTQW-1620321948967)(C:\Users\86155\AppData\Roaming\Typora\typora-user-images\1620315928786.png)]
此时再敲入git status命令
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0ixXU6Ch-1620321948969)(C:\Users\86155\AppData\Roaming\Typora\typora-user-images\1620316047822.png)]

显然,git里边依然没有东西提交,但是此时有一个可提交的文件( 还在工作区 ),还提示相关操作(git add),需要添加到暂存区,让git知道这个文件

注意:此时git还不知道这个文件,文件名是绿色的,。

git add

给暂存区添加文件,使git追踪到此文件

执行 git add 文件名
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2A3lEVu5-1620321948970)(C:\Users\86155\AppData\Roaming\Typora\typora-user-images\1620316653535.png)]
有一警告,就是安装的时候设置的LF和CRLF自动转换

再次查看状态
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ih0jjpmL-1620321948973)(C:\Users\86155\AppData\Roaming\Typora\typora-user-images\1620316712148.png)]
此时文件名已经变成绿色了,说明git已经知道这个文件了(追踪到了此文件)

此时文件在暂存区!想删除的话按照提示删除;而这个删除只是删除了暂存区的cache文件,工作区的文件还在!若又想让git追踪到文件,只需重复git add以后的操作即可;

git commit

这一步是将暂存区的文件提交到本地库(会生成历史版本:无法删除)

git commit -m “日志信息(版本信息等等)文件名”
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-u7DKeEz3-1620321948975)(C:\Users\86155\AppData\Roaming\Typora\typora-user-images\1620317934298.png)]
此时再git status
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QKNuKfId-1620321948977)(C:\Users\86155\AppData\Roaming\Typora\typora-user-images\1620318109174.png)]
原来的第二行消失了(本地库有东西了,有自己的版本号了(上上图中的5df271f))

nothing to commit说明暂存区也没文件了

git reflog

查看版本信息:版本号和[版本名称](first commit)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CIqE3q5D-1620321948979)(C:\Users\86155\AppData\Roaming\Typora\typora-user-images\1620318412257.png)]

git log

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oWpZzEkZ-1620321948982)(C:\Users\86155\AppData\Roaming\Typora\typora-user-images\1620318623509.png)]
此命令不仅可以看到版本信息,还可以看到是谁将文件上传到本地库的,还有相应时间信息,此命令看到的版本号是完整的版本号,而git reflog得到的是精简版的版本号。

注意:如果修改本地文件时,修改后,git无法追踪新文件,查看git status会提示需要git add修改后的文件,重复上述将文件添加到本地库的过程,此时版本号会多一个,而Head会指向新的master

工作区只有一个文件,修改的文件会被覆盖(底层时一个指针指向新的文件),而添到本地库后,会生成相应的历史版本,这是无法删除的;

版本穿梭

git本地库在增加版本后,head总是指向新的master(其实就是master指向新的版本号)。

此时若是新版本不如旧版本,需要重新回到旧版本,则涉及到一个版本穿梭问题;

先查看所有的版本信息
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rO9Wrq0v-1620321948989)(C:\Users\86155\AppData\Roaming\Typora\typora-user-images\1620321103671.png)]
在执行 git reset --hrad 要回到的版本号
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KtAxr1NZ-1620321948993)(C:\Users\86155\AppData\Roaming\Typora\typora-user-images\1620321224521.png)]
显示head指针已经指向目标版本了,此时查看版本信息( reflog )
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cGSrhSLH-1620321948999)(C:\Users\86155\AppData\Roaming\Typora\typora-user-images\1620321351715.png)]
它这个日志很详细,显示head指向目标版本

注意:版本切换后,工作区的文件将恢复到当前版本的相应文件!

参考文献

参考文献:[尚硅谷Git学习]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值