基于Git的常用撤销技巧与解决冲突方法(推荐)
作者:NiceCui 发布时间:2023-07-01 19:20:28
git checkout . #本地所有修改的。没有的提交的,都返回到原来的状态
git stash #把所有没有提交的修改暂存到stash里面。可用git stash pop回复。
git reset --hard HASH #返回到某个节点,不保留修改。
git reset --soft HASH #返回到某个节点。保留修改
撤销Git add操作
git reset HEAD <file> # 取消add操作并保留修改
git checkout -- <file> # 若继续该命令,则会删除掉刚刚的修改内容
撤销Git commit操作
git reset --soft <commit_id> #可以回退到某个commit并保存之前的修改 <commit_id>从git log中取,取前7位即可
git reset --hard <commit_id> #回退到某个commit不保留之前的修改
撤销Git push操作
git revert <commit_id>
原理: git revert 会产生一个新的 commit,它和指定 SHA 对应的 commit 是相反的(或者说是反转的)。 任何从原先的 commit 里删除的内容会在新的 commit 里被加回去,任何在原先的 commit 里加入的内容会在新的 commit 里被删除。这是 Git 最安全、最基本的撤销场景,因为它并不会改变历史 — 所以你现在可以 git push 新的“反转” commit 来抵消你错误提交的 commit。
Git:代码冲突常见解决方法
如果系统中有一些配置文件在服务器上做了配置修改,然后后续开发又新添加一些配置项的时候,
在发布这个配置文件的时候,会发生代码冲突:
error: Your local changes to the following files would be overwritten by merge:
protected/config/main.php
Please, commit your changes or stash them before you can merge.
如果希望保留生产服务器上所做的改动,仅仅并入新配置项, 处理方法如下:
git stash
git pull
git stash pop
然后可以使用Git diff -w +文件名 来确认代码自动合并的情况.
反过来,如果希望用代码库中的文件完全覆盖本地工作版本. 方法如下:
git reset --hard
git pull
来源:http://www.cnblogs.com/NiceCui/archive/2017/11/05/7788781.html


猜你喜欢
- 以前碰见这种使用场景都是直接order by rand()来处理的,但是效率实在是不敢恭维,所以最近又碰见这种场景,在网上找寻下比较好的解决
- 如下所示:python3:img_path = ' 'im = cv2.imdecode(np.fromfile
- 环境:RHEL 5.4 x86 , oracle 11.2 1.设定环境变量 在/home/oracle编辑 # .bash_profile
- 在平常的一些的小规模的数据的过滤、清洗过程中使用最多的就是正则表达式,但是随着数据规模的增大,正则表达式就显得有些心有余力不足了。正则表达式
- 下载源码git clone https://github.com/mysql/mysql-server.gitcd mysql-server
- 使用type()查看数据的类型在Python中, 可以使用type()类型来查看数据的类型:>>> type(3)<
- 问题描述输入一串字符,由字母、数字和空格组成,长度 < 1000, 判断其中是否存在日期格式的数据。日期格式的数据具有如下的特征,连续
- 一、使用ImageFolder读取数据集时忽略特定文件如果事先知道需要忽略哪些文件,当然直接从数据集里删除就行了。但如果需要在程序运行时动态
- 本文实例讲述了Django框架实现分页显示内容的方法。分享给大家供大家参考,具体如下:分页1、作用数据加载优化2、前端引入bootstrap
- Python中的penpyxl是一个第三方库,可以处理xlsx格式的Excel文件。pip install openpyxl安装。penpy
- 目录func Containsfunc HasPrefixfunc HasSuffixfunc Replacefunc Splitfunc
- 错误出现:导入数据时出现“SqlDateTime 溢出。必须介于 1/1/1753 12:00:00 AM 和 12/31/9999 11:
- 最近在改一个页面,原来的编码是gb2312,为了国际化,改成utf-8,开始时浏览还是正常。因为电脑偶感小恙,于是恢复了系统,这才发现改后的
- 由 John Resig 的 How JavaScript Timers Work 可以知道,现有的 JavaScript 引擎是单线程处理
- 一段时间以来,发现有很多人XHTML都不会用,不光是普通的初学者,有的程序员都不是很清楚该怎么写这个XHTML,我这里呢算是把一些常见的应用
- PyQt5状态栏控件QStatusBar简介MainWindow对象在底部保留有一个水平条,作为状态栏(QstatusBar),用于显示永久
- 我们平常在网页上显示的字体最小一般是12PX,当小于10PX时,显示的效果就大打折扣了,因为中文默认的字体是宋体,当小于12PX时的效果如下
- 1.在pycharm下安装scrapy函数库2.将安装好scrapy函数库下的路径配置到系统path的环境变量中3.打开cmd终端输入:sc
- asp之家注:asp中FSO组件的功能很强大,如果没有FSO很难想象ASP会变成什么样。对于学习asp编程的朋友一定会接触到FSO相关的操作
- 最近做了一个项目其中有项目需求涉及到访问控制,在访问需要登录才能使用的页面或功能时,会弹出登录框:效果如下: 图 1-点击用户名时,如未登录