Git 撤销已提交的文件
多人开发的项目,使用git时,会有冲突的存在的情况
1.1 如果不小心commit了一个不需要commit的文件,可以对其进行撤销。
git add .
git commit -m'测试'
git push 推送不上去,提示有冲突
使用命令 git reset --mixed HEAD~2 ,回退到第一步,将步骤2取消掉,步骤3的文件将会撤销,变成等待添加,但不会丢失,我们只需要在add一次即可。
此时先回退之前的修改(记得备份),再 git pull 拉取最新代码,加上自己的修改再次提交即可
例如:假设有三个commit, git st:
commit3: add test3.c
commit2: add test2.c
commit1: add test1.c
当执行git revert HEAD~1时, commit2被撤销了
1.2 另一种方式
可以继续操作git push
重新再次执行 git add .
git commit -m'测试'
git push
命令后,此时查看文件修改,会看到有冲突的某一文件,这时,查看修改是否正确,决定采用哪次修改
关于git reset命令,包括 --mixed,--soft --hard等,其中--mixed为默认方式,他们之间的区别如下
git reset –mixed:此为默认方式,不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息 git reset –soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可 git reset –hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容git reset -soft :取消了commit git reset -mixed(默认) :取消了commit ,取消了add git reset -hard :取消了commit ,取消了add,取消源文件修改
git revert和git reset的区别:
git revert 是撤销某次操作,此次操作之前的commit都会被保留
git reset 是撤销某次提交,但是此次之后的修改都会被退回到暂存区
Git 撤销已提交的文件相关推荐
- git 删除 已提交的 文件
如果不想要的文件夹提交到了GIT 这时想要删除相关的文件则可以使用以下命令 删除 target 文件夹 git rm -r target git commit -m "删除文件" ...
- 将.gitignore应用于已提交的文件
本文翻译自:Applying .gitignore to committed files I have committed loads of files that I now want to igno ...
- git更改已提交作者用户名
git更改已提交作者用户名 官网地址 配置作者用户名 为当前本地库单独配置作者信息 git config -f .git/config user.name "name" git c ...
- git 撤销未提交的修改
checkout 恢复某个已修改的文件(撤销未提交的修改): $ git checkout file-name revert 还原已提交的修改(已经提交过的修改,可以反悔-) 还原最近一次提交的修改: ...
- git 撤销修改以及删除文件(亲测最后一个删除后还原)
撤销修改 1.如果当你修改了代码,然后又发现修改错误以后,想撤销前面的操作的时候该怎么办呢? 既然错误发现得很及时,就可以很容易地纠正它.你可以删掉最后一行,手动把文件恢复到上一个版本的状态.如果用 ...
- Git 删除已经提交的文件(Delete commits from a branch in Git)
运用场景 我提交了一个文件到github 的服务器上,并且已经点击了commit, 这个时候,因为文件最大不能超过100MB 所以在push 的时候出现了错误. 所以当我们误提交一个文件的时候,我们这 ...
- git修改已提交记录的注释
已提交暂存区但还未提交远端仓库 命令:git commit --amend -m 已提交远端仓库 命令:git rebase 可以参考:http://www.cnblogs.com/dudu/p/47 ...
- Git修改已提交的commit
1 本地修改 由于以下修改本身是对版本历史的修改,在需要push到远程仓库时,往往是不成功的,只能强行push,这样会出现的一个问题就是,如果你是push到多人协作的远程仓库中,会对其他人的远程操作构 ...
- git修改已提交commit的Author信息
在 git 中可以通过 git commit --amend 来修改最近一个已提交 commit 的 Author 信息,使用如下: git commit --amend --author " ...
最新文章
- 软件中的易用性设计及测试(三)之实践
- 谷歌教机器人理解语义,像人一样学习复杂技能 | 附3篇论文
- delphi 回调函数
- python中等高线填充颜色_Python matplotlib使用colormap更改contourf plot中指定值的颜色...
- redis源码之sds
- 「后端小伙伴来学前端了」CSS3伪元素选择器 ::before ::after | 记录自己的前端学习日子
- POJ--3974 Palindrome(回文串,hash)
- 速览EMNLP 2020上录取的知识图谱相关论文
- 又一起!北大副校长詹启敏院士被疑25篇论文造假
- java里有位移吗_Java 中位移运算符 ,,
- TypeError:Can't instantiate abstract class Ultraman with abstract methods sttack 报错
- 数据结构:堆栈的区别
- ubuntu linux 从入门到精通.pdf,UBUNTU LINUX从入门到精通(附DVD)
- ArcGis for JavaScript 4.23版本接入国家天地矢量地图
- label_studio自动预标注功能
- android 电池(一):锂电池基本原理篇 .
- oracle pl sql面试题,Oracle 面试题库—PL/SQL
- 【Elasticsearch】bulk的使用
- Android APP架构设计——MVP的使用示例
- elasticsearch ik分词实现 中文、拼音、同义词搜索
热门文章
- 在C/C++中常用的符号
- 全局zomm缩放后echarts鼠标偏移的问题(鼠标触发提示框位置有偏差)
- 计算机端口com1,访问端口“COM1”被拒绝(Access to the port “COM1” is denied)
- 阿里云域名证书免费认证教程
- yolov5 训练结果解析
- 驱动学习(十)poll机制
- mysql 的 虚拟表(DUAL)的介绍及使用场景---条件插入insert
- win10系统解决office16的VBE6EXT.OLB不能被加载的问题
- IDEA mybatis XML文件格式化问题
- Kali Linux中无法使用pip的解决方法