git相关命令

目录

一、创建

二、添加文件和修改提交文件

[1、git add 文件名 添加到暂存区](#1、git add 文件名 添加到暂存区)

提交多个文件

撤销回工作区

[2、git commit -m "注释" 提交文件到主分支](#2、git commit -m "注释" 提交文件到主分支)

3、修改后添加,提交

三、版本回退

[1、查看日志git log](#1、查看日志git log)

2、版本回退和撤销

2.1版本回退(当前的版本回退到上一个版本)

2.2回退撤销(把回退的再撤销)

四、删除文件


一、创建

目录下新建一个testGit版本库。进入该文件夹,右键通过命令行的方式打开窗口。

git bash here

通过命令 git init 把这个目录变成git可以管理的仓库

git init 把这个目录变成git可以管理的仓库。目录中生成.git的隐藏文件夹,这个目录是Git来跟踪管理版本的,没事千万不要手动乱改这个目录里面的文件,否则,会把git仓库给破坏了。

.git里面内容如下:

二、添加文件和修改提交文件

首先要明确下,所有的版本控制系统,只能跟踪文本文件的改动,比如txt文件,网页,所有程序的代码等,Git也不列外,版本控制系统可以告诉你每次的改动,但是图片,视频这些二进制文件,虽能也能由版本控制系统管理,但没法跟踪文件的变化,只能把二进制文件每次改动串起来,也就是知道图片从1kb变成2kb,但是到底改了啥,版本控制也不知道。

1、git add 文件名 添加到暂存区

创建文件readme.txt,并在里面写上一些话。

此时这个文件在工作区

通过git status可以查看文件追踪的情况

用命令 git add readme.txt添加到暂存区里面去。

我们发现添加到暂存区的时候会有警告出现。不过没关系,是换行符的警告。

我们可以看到readme.txt目前处于暂存区。

提交多个文件

git add 文件1 文件2 (此时添加文件1和2进入暂存区)

git add . (添加工作区所有文件到暂存区)

git add -A 提交所有变化

git add -u 提交被修改(modified)和被删除(deleted)文件,不包括新文件(new)

git add . 提交新文件(new)和被修改(modified)文件,不包括被删除(deleted)文件

撤销回工作区

可以通过提示的话来撤销回工作区 git rm --cached readme.txt

2、git commit -m "注释" 提交文件到主分支

git commit -m 'first commit'

现在我们已经提交了一个readme.txt文件了,我们下面可以通过命令git status来查看是否还有文件未提交

注意:注释是必须要写的。

3、修改后添加,提交

修改文件,在文件中加入一行。查看git的状态

我们发现文件进入到工作区

这里有两个提示分别是

1、修改后的readme.txt需要再次进行添加提交

2、或者checkout上一个版本的文件来覆盖修改后的文件

git checkout -- readme.txt

三、版本回退

1、查看日志git log

通过日志可以看到提交的注释,提交人,提交时间,提交的唯一标识符(sha1)等相关信息

git log命令显示从最近到最远的显示日志,我们可以看到最近三次提交

如果嫌上面显示的信息太多的话,我们可以使用命令 git log pretty=oneline 演示如下:

2、版本回退和撤销

2.1版本回退(当前的版本回退到上一个版本)

可以使用如下2种命令

第一种是:git reset --hard HEAD^ 那么如果要回退到上上个版本只需把HEAD^ 改成 HEAD^^ 以此类推。那如果要回退到前100个版本的话,使用上面的方法肯定不方便,我们可以使用下面的简便命令操作:git reset --hard HEAD~100 即可。未回退之前的readme.txt内容如下:

我们查看文件的内容:

查看提交日志:

第二种 :同时我们也可以通过sha1的前四位来做回退
git reset --heard sha1

2.2回退撤销(把回退的再撤销)

我们可以通过版本号回退,使用命令方法如下

git reset --hard 版本号

先通过git reflog获取当前的版本号

通过上面的显示我们可以知道,增加内容update 2的版本号是 8d95a43.我们现在可以命令

git reset --hard 8d95a43

查看撤销后的结果。

四、删除文件

创建几个txt文件用于测试删除

一般情况下,可以直接在文件目录中把文件删了,或者使用如上rm命令:rm b.txt ,如果我想彻底从版本库中删掉了此文件的话,可以再执行commit命令 提交掉。

git rm test.txt

我们发现删除的文件直接进入暂存区(此刻需要注意,如果使用rm删除不在暂存区,需要git add才会进入暂存区。如果进入暂存区可以退回工作区,使用下面命令 git reset HEAD test.txt

提交之后文件被删除。

相关推荐
苏-言3 小时前
Git进阶之旅:Git 配置信息 Config
git
画船听雨眠aa21 小时前
git仓库
git
悬铃木下的青春1 天前
【Git】使用笔记总结
笔记·git
九月十九1 天前
Git 的基本概念和使用方式
git
小雨凉如水1 天前
工作总结:git篇
git
嵌入式小能手3 天前
移植前准备之git管理内核源码
git
Yungoal3 天前
Unity git版本管理
git
小锋学长生活大爆炸3 天前
【知识】可视化理解git中的cherry-pick、merge、rebase
git
牛马程序员‍3 天前
Day99 Gitub、系统分层架构
git·架构·mvc·ddd架构·gitub