Git命令使用教程

2025-10-14 20:21:09

1、首先,我们可以通过"git status"可以查看WorkSpace的状态,如果本地仓库有修改,则在输入git status命令后会显示更新的文件,但是更新只是在WorkSpace中,没有到暂存区中。只有被add到暂存区的更新才会被提交进入本地仓库。

如果想还原修改的文件,则使用命令git checkout -- 文件名包含路径“。

Git命令使用教程

2、如果想要追踪新文件,我们使用git add命令。git add 后面可以指明要跟踪的文件或目录路径。如果是目录的话,就说明要递归跟踪该目录下的所有文件。

git add命令是将目标文件快照放入暂存区域,即 add file into staged area,同时未曾跟踪过的文件标记为需要跟踪。

使用git add . 则会将所有修改或新增的文件放入暂存区,这时候文件已经从WorkSpace保存到Stage中。

Git命令使用教程

3、我们使用“git commit -m”来提交更新,-m后面跟的是对commit的描述(message),这时的更新已经从Stage保存到了Local Repo(本地仓库)中。

Git命令使用教程

4、git diff 命令用于显示WorkSpace中的文件和暂存区文件的差异,当我们把更新add到Stage中,git diff就不会有任何输出了。

我们也可以把WorkSpace中的状态和repo(本地仓库)中的状态进行diff,命令如下。

git diff HEAD

如果文件没有修改,则什么也不会显示。

Git命令使用教程

5、撤销更新文件:更新可能存在三个地方,WorkSpace中,Stage中和repo中。

1. 撤销WorkSpace中的更新,我们使用git checkout --<file>...来撤销WorkSpace中的更新,此时本地修改的文件会还原。注意:使用这种方法撤销更新的时候一定要慎重,因为通过这种方式撤销后,更新将没有办法再找回。

2. 撤销Stage中的更新(即add后的更新),使用了"git add"把这个更新提交到暂存区后,通过"git reset HEAD <file>..."把暂存区的更新移出到WorkSpace中,使用git reset HEAD命名则撤销全部的更新,若想继续撤销WorkSpace中的更新,请参考上面一步。

3. 撤销repo(本地仓库)中的更新,在介绍撤销本地仓库更新之前,我们先看一下"git log"这个命令,通过这个命令我们可以查看commit的历史记录,如下图所示。

撤销提交有两种方式:使用HEAD指针和使用commit id

在Git中,有一个HEAD指针指向当前分支中最新的提交。当前版本,我们使用"HEAD^",那么再前一个版本可以使用"HEAD^^",如果想回退到更早的提交,可以使用"HEAD~n"。(也就是,HEAD^=HEAD~1,HEAD^^=HEAD~2)

以下三个命令都可以撤销最新的修改,使代码恢复到历史版本:

git reset --hard HEAD^

git reset --hard HEAD~1

git reset --441db6190b27683f72d90bc1a8a2c1849744bf

接下来我们详细介绍--hard和--soft的区别:

前面在使用reset来撤销更新的时候,我们都是使用的"--hard"选项,其实与之对应的还有一个"--soft"选项,区别如下:

--hard:撤销并删除相应的更新

--soft:撤销相应的更新,把这些更新的内容放到Stage中

Git命令使用教程

Git命令使用教程

6、恢复被撤销的提交:

我们使用git reflog"这个命令。"git log"只是包括了当前分支中的commit记录,而"git reflog"中会记录这个仓库中所有的分支的所有更新记录,包括已经撤销的更新。

恢复撤销操作使用如下命令:

git reset --hard HEAD@{3}

git reset --hard 9e6d46c

Git命令使用教程

7、接下来我们介绍Git删除文件:

rm <file>

git rm <file>

"git rm"相比"rm"只是多了一步,把这次删除的更新发到Stage中。

8、总结:从下图我们可以看出,每一个git命令作用的区域有哪些。

Git命令使用教程

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢