从0开始学Git指令

从0开始学Git指令

因为网上的git文章优劣难评,大部分没有实操展示,所以打算自己从头整理一份完整的git实战教程,希望对大家能够起到帮助!

初始化一个Git仓库,使用git init命令。

从0开始学Git指令_第1张图片

添加文件到Git仓库,分两步:
  1. 使用命令git add ,注意,可反复多次使用,添加多个文件;
    从0开始学Git指令_第2张图片
  2. 使用命令git commit -m ,完成。
    从0开始学Git指令_第3张图片
  3. 我们开始修改test1.txt文件,向里面添加一些内容(初始时是空)
    从0开始学Git指令_第4张图片
    现在,保存之后运行git status命令看看结果:

从0开始学Git指令_第5张图片

根据提示现在我们有俩种选择:
  • git add : 添加到暂存区
  • git commit -a : git commit -a 命令表示将所有已经跟踪的文件的修改一起提交到版本库中。这个命令会自动将所有已经跟踪的文件的修改添加到暂存区,然后提交这些修改。这样就可以省略git add命令,直接提交所有已经跟踪的文件的修改。
Git告诉我们tet1.txt被修改了,但不知道具体修改了什么内容,想要清楚的知道的话,需要用git diff这个命令看看:

从0开始学Git指令_第6张图片
可以很清楚的看到添加了一句自我介绍~

接下来使用上面提到的俩种选择将修改提交到2版本库中
  1. git add : 添加到暂存区
    从0开始学Git指令_第7张图片
    (git add .):之前提到的是将所有文件都添加到暂存区,这次指定文件名称
    让我们看看status的状态变化:
    在这里插入图片描述
    在这里插入图片描述
  2. 提交到版本库
    从0开始学Git指令_第8张图片
    2.git commit -a : git commit -a 命令表示将所有已经跟踪的文件的修改一起提交到版本库中。这个命令会自动将所有已经跟踪的文件的修改添加到暂存区,然后提交这些修改。这样就可以省略git add命令,直接提交所有已经跟踪的文件的修改。(我们继续修改一下test1.txt文件)
    从0开始学Git指令_第9张图片
    要随时掌握工作区的状态,使用git status命令。
    从0开始学Git指令_第10张图片
    使用git commit -a 直接提交
    从0开始学Git指令_第11张图片
    如果我们现在想知道我们之前每一次都在test.txt提交修改的内容,我们可以使用git log命令查看:
    从0开始学Git指令_第12张图片
    如果嫌输出信息太多,看得眼花缭乱的,可以试试加上–pretty=oneline参数:
    从0开始学Git指令_第13张图片
如果现在2023年了,php是世界上最好的语言? 我不敢苟同,Java永远的神,所以我想回退到在test1.txt添加;自我介绍的那个版本,需要怎么做?

首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是最新的提交,上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100

现在,我们要把当前版本回退到上一个版本,就可以使用git reset命令:

从0开始学Git指令_第14张图片

git reset --hard 命令中的 --hard 表示重置的模式。在这个模式下,git会重置暂存区和工作目录到指定的提交,同时丢弃所有未提交的修改。这意味着任何未提交的修改都将被永久丢弃,包括工作目录中的所有文件的修改和暂存区中的内容。

让我们使用git log命令再次查看:
从0开始学Git指令_第15张图片
可以发现最新的版本已经没有了,将来的某一天,php死灰复燃 浴火重生,想要回退到之前那个怎么办,(有人说,修改txt文件呀),我不愿意~,我就要回退
办法其实还是有的,只要上面的命令行窗口还没有被关掉,我们可以找到前面的commit id
在这里插入图片描述
我们再次使用 git reset --hard
在这里插入图片描述
果然,我PHP又回来了。
版本号没必要写全,前几位就可以了,Git会自动去找。当然也不能只写前一两位,因为Git可能会找到多个版本号,就无法确定是哪一个了。

Git的版本回退速度非常快,因为Git在内部有个指向当前版本的HEAD指针,当你回退版本的时候,也只是改变了Git中HEAD的指向

现在,你回退到了某个版本,关掉了电脑,git窗口关闭,第二天早上就后悔了,想恢复到新版本怎么办?找不到新版本的commit id怎么办?

我们必须找到PHP的commit id,Git提供了一个命令git reflog用来记录你的每一次命令:
从0开始学Git指令_第16张图片
我们就找到了添加全世界最好的语言的commit id

总结一下:

初始化一个Git仓库,使用git init命令。

添加文件到Git仓库,分两步:

使用命令git add ,注意,可反复多次使用,添加多个文件;
使用命令git commit -m ,完成。

要随时掌握工作区的状态,使用git status命令。

如果git status告诉你有文件被修改过,用git diff可以查看修改内容。

HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id

穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。

要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。

你可能感兴趣的:(从0开始学Git,git)