Git版本控制器-基本命令
引言:虽然 Git 已经学过了,但因为好长时间没去使用,现在突然要用它导致一时想不到从哪开始。所以今天花了点时间又将Git重新复习了下,复习的内容也不是很多,就几个常用的命令。
首先:我们得明白git的基本常识:
第一步:我们需要对 将被 Git 所管理的文件夹进行初始化,目的是为了让 Git 去识别并管理它,要不然Git就会管理不到我们的这个文件夹。
对文件夹进行初始化
命令:git init,
当我们在文件夹中创建了一个文件 test.txt 时,这个文件只是在我们的工作目录中存在
查看 git 的状态
命令:git status
可以看到 git 提示我们 test.txt 是一个未被跟踪的文件,并提示我们可以使用 git add <file> 命令
将工作区的文件保存到暂存区中
命令:git add <file>,git add 工作区要保存的文件名(*表示将工作区中的所有文件添加到暂存区)
可以看到 git 提示我们有一个需要提交的更改,并告诉我们有一个新文件 test.txt,还提示我们可以使用 git rm --cached <file> 去删除这个文件
将暂存区中的所有操作保存到版本库的分支上,默认是 master 主分支
命令:git commit
对比当前文件和当前分支上最新的文件之间的差别
命令:git diff:查看所有文件的修改
命令:git diff HEAD -- <file>:查看指定文件的修改
查看历史提交的版本记录
命令:git log
可以看到有四行数据,分别代表着:
commit:版本ID,通过版本ID可以实现版本的切换
Author:上传者
Date:上传日期
上传说明
命令参数:
--pretty=oneline:将记录显示在一行,不显示作者和时间
回滚版本
命令:git reset --hard 版本号
版本号:
git log 中看到的版本ID,
HEAD:指代当前版本,
HEAD^:一个^表示回退前一个版本,
HEAD~<index>:指定回退的次数
查看修改版本的每一次操作记录
命令:git reflog
撤销操作
当修改后还未添加到暂存区:(撤销工作区的修改)
git restore file:执行命令后,会撤销先前操作,恢复到上一个提交时的状态
当修改后并添加到暂存区后再对工作空间的该文件做修改:
git restore --staged file:删除暂存区的保存
当已修改并添加到暂存区后再对工作空间的该文件做修改:
git restore file:撤销第二次修改操作,会回到保存到暂存区时的状态
当文件修改后并且添加到暂存区时,想要撤销操作:
git reset HEAD file:会将暂存区的修改删除,工作区的文件内容不受改变
当文件修改后并且添加到暂存区,而且提交到git版本库中,想要撤销操作:
git reset --hard HEAD^:回退到上一个版本
当文件修改后并且提交到git版本库中,而且还推送到远程版本库中...救不活了
删除操作
当我们误将工作空间的文件删除(还没有添加操作到暂存区),想要恢复时:
git restore file:会回退文件的操作(前提是版本库中存在该文件),当我们删除文件后使用git status,git工具检测到工作区的文件与版本库中的文件不一致,就会发出提示信息
当我们误将工作空间的文件删除(删除前的修改操作已保存到暂存区,但是未提交),想要恢复时:
git restore file:撤销第二次操作,回到保存到暂存区时的状态
当我们将一个文件删除后并提交操作到版本库中,过后想要恢复文件
git reset --hard HEAD^:只能回退到上一个版本,这个版本的文件已经被删除了
当我们确实想要删除一个文件时:
git rm file
git commit -m "xxx"