Git的基本使用
Git创建
首先进行git的安装,安装完成后输入以下命令进行设置:
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
其中,--global
表示这台机器上的所有Git仓库都会使用这个配置。
查看已经配置的用户名和Email地址用命令
$ git config user.name
$ git config user.email
接下来,在某目录下输入git init
将其变成Git可以管理的仓库
Git文件添加提交
使用VSCode进行readme.txt文件的编译,然后采用如下命令进行文件的添加和提交
$ git add readme.txt
$ git commit -m "wrote a readme file"
-m
后面为本次提交的说明
git add
是把工作区文件修改添加到暂存区,git commit
是把暂存区的所有内容提交到当前分支
Git版本回退
将当前版本回退到上一个版本
$ git reset --hard HEAD^
HEAD
为指向当前版本的指针,^
表示指向上一个版本,可以进行叠加
同理,使用以下命令可以回到指定的版本
$ git reset --hard 1094a
--hard
后面跟的是commit id
,填写时允许只填写前几位
git reset
命令还可以把暂存区的修改撤销掉,重新放回工作区
$ git reset HEAD readme.txt
如果想要丢弃工作区的修改,可以用
$ git checkout -- readme.txt
这个命令的作用是把readme.txt
文件在工作区的修改全部撤销,分两种情况:
一种是readme.txt
自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;一种是readme.txt
已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。总之,就是让这个文件回到最近一次git commit
或git add
时的状态。
版本回退小结
场景1:如果改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file
。
场景2:如果不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD <file>
,就回到了场景1,第二步按场景1操作。
场景3:如果已经提交了不合适的修改到版本库时,想要撤销本次提交,用git reset --hard HEAD^
,不过前提是没有推送到远程库。
Git文件删除
如果要从版本库删除某文件,用
$ git rm test.txt
$ git commit -m "remove test.txt"
或者也可以先手动删除文件,然后使用git rm <file>
和git add <file>
命令
如果在文件管理器中删除错了文件,但文件在版本库里面还有,用以下命令可以把误删的文件恢复到最新版本
$ git checkout -- test.txt
git checkout
其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”,但注意恢复文件只能到最新版本,会丢失最近一次提交后再进行的修改
注意从来没有被添加到版本库就被删除的文件,是无法恢复的
Git相关命令
git statue
可以查看仓库当前的状态git diff
可以查看Git管理的文件被修改了什么内容git log
显示从最近到最远的提交日志
可以用git log --pretty=oneline
简化输出git reflog
查看历史命令,可以用于确定回到已经删除的哪个未来版本git diff HEAD -- readme.txt
可以查看当前工作区和版本库里最新版本的区别
参考资料
https://www.liaoxuefeng.com/wiki/896043488029600