git:二、git的本地配置+工作区域和文件状态+git不同状态在pycharm中的颜色表现+git add/commit/log +git reset回退版本
git的使用方式
- 命令行(最常用)
- 图形化界面
- IDE插件/拓展(次常用)
git的本地/系统配置
之前的文章提到过git的全局配置。如下:
git config --global user.name "ss"
git config --global user.email "xxxxxx@qq.com"
如果省略–global,则会变为本地配置,只对本地仓库(一般一个项目文件对应着一个本地仓库)
git config user.name "ss"
git config user.email "xxxxxx@qq.com"
如果将global改为system,则变为系统配置,对当前电脑的所有用户生效
git config --system user.name "ss"
git config --system user.email "xxxxxx@qq.com"
注意:如果用户名不存在空格,双引号可以被省略。但养成好习惯,一般都加上
工作区域和文件状态
这里推荐看了很多视频或者csdn文章,还搞不懂的同学去b站上搜索GeekHour的视频,讲的较为清晰。以下是其视频图片节选
工作区就相当于生产车间。
本地仓库就相当于生产产品存放的仓库。
暂存区就相当于从车间到仓库的运输产品的货车。
git不同状态在pycharm中的颜色表现
新创建的未跟踪的文件、git reset命令来到的已修改的文件为红色
已修改和已暂存和git add命令来到的未修改的文件为绿色,也就是说只要是git add之后的都是绿色
git commit命令来到的未修改的文件为白色,也就是说git commit之后的是白色
git rm命令来到的未跟踪的文件直接从工作区(pycharm)目录中删除。
但是如果来到pycharm自带的git的Commit的Changes区,实际上还能看到这个文件,是灰色的
此时其实还可以通过git commit命令提交,提交后这个文件在本地仓库中也被删除了。
然后我们新创建一个文件gittest并git add这个文件。此时这个文件应该是绿色的
随后我们输入git reset gittest命令,可以发现这个文件变成红色的了
此时我们gittest文件里面的内容如下,并进行git add
随后我们修改文件内容如下:
ctrl s保存之后再输入git checkout gittest
可以看到文件的内容已经自动变回上一次我们git add进去的内容,也就是暂存区这个文件最后的状态。
此时我们用git rm gittest命令试图从工作区中删除这个文件,发现会有个error
这里的git的意思是说我们试图删除一个已经在 Git 索引中(即已经暂存)的文件。我们可以使用 --cached 选项删除暂存的文件,但保留工作目录中的文件。或者使用 -f 选项强制删除暂存的文件,且工作目录中的文件也被删除。
当然,如果我们不想删除文件,而只是想取消暂存它,可以使用 git restore --staged命令,这将从暂存区中删除 gittest 文件,但不会从工作目录中删除它。
这三个命令的区别具体可以见本人另一篇博客:http://t.csdnimg.cn/Rrx9P
当然,如果这个文件不仅是已暂存的,而且是已提交的,那么用git rm就不会报这个错误。
git add/commit/log
git add 添加到暂存区
可以使用通配符,例如:git add *.txt 将所有.txt文件添加到暂存区
可以添加当前目录下所有文件,例如:git add .
git commit 提交
通常为git commit -m “此次提交的说明”
ATT:git commit -m 后面不建议省略双引号,如果此次提交没有想要说明的信息,可以只留双引号。但是如果没写双引号,git会默认进入vim编辑器让你输入此次提交想要说明的信息。
其次,git commit命令只提交暂存区中的内容,不会提交工作区中其他没有添加到暂存区的内容。
git log 查看仓库提交历史记录
可以使用 --oneline 参数来查看简介的提交记录
git reset 回退版本
git reset有三种模式,如下:
git reset --soft 保留工作区和暂存区的内容
git reset --hared 清空工作区和暂存区的内容
git reset --mixed 保留工作区内容,清空暂存区内容。
其中git reset --mixed是git reset的默认模式
鸡鸭扣: 笔者最近精力有限捏呜呜呜,感谢您的认可
Vivian16738: 确实不错,可以出个教学视频不?
鸡鸭扣: 捉住一只野生科研✌
BlastOrange: 真酷吧这个
m0_74970789: 你好,我的可以跳转到登录页面,但是登录不了,报了一个502