02-git基本操作

130 阅读2分钟

git基本操作

我们可以根据文件在不同时期的状态对文件进行不同的操作。

查看文件状态

git status
# 查看简要信息
git status -s

工作区的操作

我们使用git status 查看目前工作区的修改

image-20220116204549454.png

根据上图,我们可以发现有两个文件与版本库不同

  • README.md

    发生改变的文件

    可以通过add 添加到暂存区

    可以restore放弃工作区的修改(还原文件)

  • add.txt

    没有追踪的文件

    可以通过add添加到暂存区

添加文件到暂存区

git add <file>
# 添加全部文件
git add .

我们先添加add.txt, 之后使用git status 查看状态

image-20220116210712477.png 如上图,我们可以返现add.txt文件的状态变了

  • add.txt

    已暂存的文件,

    可以通过restore取消暂存

放弃文件的更改

git restore <file>

我们先使用restore ,再查看文件的状态

image-20220116212018463.png

可以返现,通过status 命令已经看不到README.md 文件了

这是因为文件被还原了,和本地仓库中的是一致的

暂存区的操作

将文件从暂存区移除

此操作为add的反向操作

将文件从暂存区移除,此时文件会恢复到工作区,文件内的修改不会改变

git restore --staged <file>
# 恢复全部文件
git restore --staged .

我们先恢复文件到工作区,再查看一下文件的状态

image-20220116211748048.png

我们可以发现,文件的状态和没有add 之前的一样了

将文件提交到本地仓库

将文件提交到本地仓库

git commit -m "注释"

image-20220120213243901.png

我们再通过status 查看文件状态

image-20220120213347123.png

提示没有内容需要提交

我们也可以通过log 来查看本地仓库的提交记录

git log

image-20220120213445040.png

这里使用的是vim 编辑器,按回车可以查看更多记录,:q 可以退出。

本地仓库操作

回退到暂存区

代码从版本库回退到暂存区

git reset --soft HEAD^

回退到工作区

回退到工作区 修改的内容还在

git reset --mixed HEAD^
#或者
git reset HEAD^

回到到上一个版本

撤销commit,撤销git add ,删除工作区的改动

注意完成这个操作后,就恢复到了上一次的commit状态。

git reset --hard HEAD^

git reset 操作比较复杂,不想写了,单独开一章吧。