Git 撤销放弃本地修改

1 篇文章 0 订阅

如果在修改时发现修改错误,而要放弃本地修改时:

一,未使用 git add 缓存代码时:

可以使用 git checkout -- filepathname (比如: git checkout -- readme.md  ,不要忘记中间的 “--” ,不写就成了检出分支了!!)。

放弃所有的文件修改可以使用 git checkout .  命令。

此命令用来放弃掉所有还没有加入到缓存区(就是 git add 命令)的修改:内容修改与整个文件删除。

但是此命令不会删除掉刚新建的文件。因为刚新建的文件还没已有加入到 git 的管理系统中。所以对于git是未知的。自己手动删除就好了。

或者使用下面的命令(git clean命令只适用于当前文件夹,记得切换文件夹):

# 删除 untracked files

git clean -f

# 连 untracked 的目录也一起删掉

git clean -df

 

二,已经使用了  git add 缓存了代码:

可以使用  git reset HEAD filepathname (比如: git reset HEAD readme.md)来放弃指定文件的缓存,放弃所有的缓存可以使用 git reset HEAD . 命令。

此命令用来清除 git  对于文件修改的缓存。相当于撤销 git add 命令所在的工作。在使用本命令后,本地的修改并不会消失,而是回到了如(一)所示的状态。继续用(一)中的操作,就可以放弃本地的修改。

 

三,已经用 git commit  提交了代码:

可以使用 git reset --hard HEAD^ 来回退到上一次commit的状态。此命令可以用来回退到任意版本:git reset --hard  commitid 

你可以使用 git log 命令来查看git的提交历史。

git log命令总结

•    git log --all 查看所有分支的历史

•    git log --all --graph 查看图形化的 log 地址

•    git log --oneline 查看单行的简洁历史。

•    git log --oneline -n4 查看最近的四条简洁历史。

•    git log --oneline --all -n4 --graph 查看所有分支最近 4 条单行的图形化历史。

•    git help --web log 跳转到git log 的帮助文档网页

 

 

四,git提交命令

git add -u:将文件的修改、文件的删除,添加到暂存区。

将工作空间被修改和被删除的文件添加到暂存区(不包含没有纳入Git管理的新增文件)

git add .:将文件的修改,文件的新建,添加到暂存区。

git add -A:将文件的修改,文件的删除,文件的新建,添加到暂存区。

工作中一般是用到 git add . 或者 git add -A,。今天学习更进一步解了 git add -u 以及他们之间的区别

git add -A相对于git add -u命令的优点 : 可以提交所有被删除、被替换、被修改和新增的文件到数据暂存区,而git add -u 只能操作跟踪过的文件

git add -A 等同于git add -all

 

总结:

·  git add -A  提交所有变化

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

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

 

修改重命名文件:

git mv files Files 只需要一个操作

 

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值