git reset 三种使用方法( -- hard \ soft \ mixed )
参数:
参数 | 功能 | 场景 |
---|---|---|
–hard | 清空工作区与缓存区 | 放弃目标版本后所有的修改 |
–soft | 保留工作区与缓存区,但是把版本之间的差异存放在缓存区 | 合并多个commit |
–mixed(或缺省) | 保留工作区清空缓存区,把版本之间的差异存放在工作区 | 1、有错误的commit需要修改;2、git reset HEAD清空缓存区 |
— hard
[root@mq1 a]# git init
初始化空的 Git 版本库于 /root/a/.git/
[root@mq1 a]# vi a.txt
[root@mq1 a]# cat a.txt
1
[root@mq1 a]# git add ./a.txt
[root@mq1 a]# git commit -m "a"
[master(根提交) 30ace42] a
1 file changed, 1 insertion(+)
create mode 100644 a.txt
[root@mq1 a]# vi a.txt
[root@mq1 a]# cat a.txt
1
2
[root@mq1 a]# git add ./a.txt
[root@mq1 a]# vi a.txt
[root@mq1 a]# cat a.txt
1
2
3
[root@mq1 a]# git diff --cached
diff --git a/a.txt b/a.txt
index d00491f..1191247 100644
--- a/a.txt
+++ b/a.txt
@@ -1 +1,2 @@
1
+2
[root@mq1 a]# git diff
diff --git a/a.txt b/a.txt
index 1191247..01e79c3 100644
--- a/a.txt
+++ b/a.txt
@@ -1,2 +1,3 @@
1
2
+3
[root@mq1 a]# git reset --hard HEAD
HEAD 现在位于 30ace42 a
[root@mq1 a]# git diff --cached
[root@mq1 a]# git diff
[root@mq1 a]# cat a.txt
1
[root@mq1 a]#
—soft
[root@mq1 a]# git init
初始化空的 Git 版本库于 /root/a/.git/
[root@mq1 a]# vi a.txt
[root@mq1 a]# cat a.txt
1
[root@mq1 a]# git add ./a.txt
[root@mq1 a]# git commit -m "a"
[master(根提交) 4cf9445] a
1 file changed, 1 insertion(+)
create mode 100644 a.txt
[root@mq1 a]# vi a.txt
[root@mq1 a]# cat a.txt
1
2
[root@mq1 a]# git add ./a.txt
[root@mq1 a]# git commit -m "a2"
[master 54d3e3f] a2
1 file changed, 1 insertion(+)
[root@mq1 a]# vi a.txt
[root@mq1 a]# cat a.txt
1
2
3
[root@mq1 a]# git add ./a.txt
[root@mq1 a]# vi a.txt
[root@mq1 a]# cat a.txt
1
2
3
4
[root@mq1 a]# git diff --cached
diff --git a/a.txt b/a.txt
index 1191247..01e79c3 100644
--- a/a.txt
+++ b/a.txt
@@ -1,2 +1,3 @@
1
2
+3
[root@mq1 a]# git diff
diff --git a/a.txt b/a.txt
index 01e79c3..94ebaf9 100644
--- a/a.txt
+++ b/a.txt
@@ -1,3 +1,4 @@
1
2
3
+4
[root@mq1 a]# git log
commit 54d3e3f3b9609747e343c288b49d0f2580cb4578
Author: jiajiajia <18438301593@163.com>
Date: Thu Dec 8 09:23:31 2022 +0800
a2
commit 4cf94452ee4644798d871f306a013bbaeff63265
Author: jiajiajia <18438301593@163.com>
Date: Thu Dec 8 09:23:04 2022 +0800
a
[root@mq1 a]# git reset --soft 4cf94452ee4644798d871f306a013bbaeff63265
[root@mq1 a]# git diff --cached
diff --git a/a.txt b/a.txt
index d00491f..01e79c3 100644
--- a/a.txt
+++ b/a.txt
@@ -1 +1,3 @@
1
+2
+3
[root@mq1 a]# git diff
diff --git a/a.txt b/a.txt
index 01e79c3..94ebaf9 100644
--- a/a.txt
+++ b/a.txt
@@ -1,3 +1,4 @@
1
2
3
+4
[root@mq1 a]# cat a.txt
1
2
3
4
[root@mq1 a]#
—mixed
[root@mq1 a]# git init
初始化空的 Git 版本库于 /root/a/.git/
[root@mq1 a]# vi a.txt
[root@mq1 a]# cat a.txt
1
[root@mq1 a]# git add a.txt
[root@mq1 a]# git commit -m "a"
[master(根提交) bde2a3f] a
1 file changed, 1 insertion(+)
create mode 100644 a.txt
[root@mq1 a]# vi a.txt
[root@mq1 a]# cat a.txt
1
2
[root@mq1 a]# git add ./a.txt
[root@mq1 a]# git commit -m "a2"
[master 03429a1] a2
1 file changed, 1 insertion(+)
[root@mq1 a]# vi a.txt
[root@mq1 a]# cat ./a.txt
1
2
3
[root@mq1 a]# git add ./a.txt
[root@mq1 a]# vi a.txt
[root@mq1 a]# cat a.txt
1
2
3
4
[root@mq1 a]# git diff --cached
diff --git a/a.txt b/a.txt
index 1191247..01e79c3 100644
--- a/a.txt
+++ b/a.txt
@@ -1,2 +1,3 @@
1
2
+3
[root@mq1 a]# git diff
diff --git a/a.txt b/a.txt
index 01e79c3..94ebaf9 100644
--- a/a.txt
+++ b/a.txt
@@ -1,3 +1,4 @@
1
2
3
+4
[root@mq1 a]# git log
commit 03429a146eba26059eaf5cacac30ab07612aaadf
Author: jiajiajia <18438301593@163.com>
Date: Thu Dec 8 09:32:46 2022 +0800
a2
commit bde2a3fe0c1072c1f08230cb5a9b7f7c076a8f4a
Author: jiajiajia <18438301593@163.com>
Date: Thu Dec 8 09:32:15 2022 +0800
a
[root@mq1 a]# git reset --mixed bde2a3fe0c1072c1f08230cb5a9b7f7c076a8f4a
重置后撤出暂存区的变更:
M a.txt
[root@mq1 a]# git diff --cached
[root@mq1 a]# git diff
diff --git a/a.txt b/a.txt
index d00491f..94ebaf9 100644
--- a/a.txt
+++ b/a.txt
@@ -1 +1,4 @@
1
+2
+3
+4
[root@mq1 a]# cat a.txt
1
2
3
4
[root@mq1 a]#
猜你喜欢
official
59
@mq1~]#cda
[root@mq1a]#gitinit#初始化git
初始化空的Git版本库于/root/a/.git/
[root@mq1a]#via.txt#创建文件,写入内容1
[root@mq
file
git & github学习使用笔记
分布式项目管理工具
902
git&github学习使用笔记
official
67
gitcheckout—file命令用法:
[root@mq1~]#mkdira
[root@mq1~]#cda
[root@mq1a]#gitinit#初始化版本库
初始化空的Git版本库于
blog
git常用命令笔记
工具
769
原文链接:https://blog.csdn.net/web_csdn_share/article/details/79243308几个专用名词的译名如下 Workspace:工作区 Index
工具
908
eclipse中内置了git插件,不在需要安装eclipse中把工程初始化本地库右击项目-team-ShareProject-Git-next-选中
blog
git 删除分支
git
58
如果只有本地分支存在,则直接删除本地分支即可。如果本地分支和远程分支都存在,则先删除本地分支然后再删除远程分支。删除本地分支在git中,删除本地分支并不会影响远程仓库中的任何分支。删除本地分支的命令
工具
902
finish后eclipse右下方会有提交进度出现如下则说明提交远程库成功刷新github,发现推送成功下一篇:eclipse中使用Git管理项目工程代码(3)将远程库的工程克隆到本地
ofc
常用git命令
weblog
558
拉取项目到本地gitcloneurl本地创建dev分支,并拉去远程分支到本地:gitcheckout-bdev(本地分支名称)origin/dev(远程分支名称)把某个分支上的内容都拉取到本地:gitpullorigindev(远程分支名称)把远程分支拉到本地:gitfetchorigindev(dev为远程仓库的分支名)提交远程库:gitpushoriginmaster(分支名)
归档
2018年11月
12
2018年12月
33
2019年01月
28
2019年02月
28
2019年03月
32
2019年04月
27
2019年05月
33
2019年06月
6
2019年07月
12
2019年08月
12
2019年09月
21
2019年10月
8
2019年11月
15
2019年12月
25
2020年01月
9
2020年02月
5
2020年03月
16
2020年04月
4
2020年06月
1
2020年07月
7
2020年08月
13
2020年09月
9
2020年10月
5
2020年12月
3
2021年01月
1
2021年02月
5
2021年03月
7
2021年04月
4
2021年05月
4
2021年06月
1
2021年07月
7
2021年08月
2
2021年09月
8
2021年10月
9
2021年11月
16
2021年12月
14
2022年01月
7
2022年05月
1
2022年08月
3
2022年09月
2
2022年10月
2
2022年12月
5
2023年01月
3
标签
算法基础
linux
前端
c++
数据结构
框架
数据库
计算机基础
储备知识
java基础
ASM
其他
深入理解java虚拟机
nginx
git
消息中间件
搜索
maven
redis
docker
dubbo
vue
导入导出
软件使用
idea插件
协议
无聊的知识
jenkins
springboot
mqtt协议
keepalived
minio
mysql
ensp
网络基础
xxl-job
rabbitmq
haproxy
目录
没有一个冬天不可逾越,没有一个春天不会来临。最慢的步伐不是跬步,而是徘徊,最快的脚步不是冲刺,而是坚持。