git pull遇到错误:error: Your local changes to the following files would be overwritten by merge:
2016-04-09 11:05
393 查看
场景:因为有事情需回到学校搞毕设,同事在公司说接口代码有问题,需要修改;
我用笔记本把代码同步到笔记本,然后做了一些修改、提交。修改完成。
第二天我来到公司(公司里用台式机,不是自己的笔记本),忘了先git pull到本地之后,直接在台式机上的代码进行编写,突然想起忘了pull了,然后想用git pull来更新本地代码。结果报错:
意思是我台式机上新修改的代码的文件,将会被git服务器上的代码覆盖;我当然不想刚刚写的代码被覆盖掉,看了git的手册,发现可以这样解决:
方法1:如果你想保留刚才本地修改的代码,并把git服务器上的代码pull到本地(本地刚才修改的代码将会被暂时封存起来)
如此一来,服务器上的代码更新到了本地,而且你本地修改的代码也没有被覆盖,之后使用add,commit,push 命令即可更新本地代码到服务器了。
方法2、如果你想完全地覆盖本地的代码,只保留服务器端代码,则直接回退到上一个版本,再进行pull:
注:其中origin master表示git的主分支。
我用笔记本把代码同步到笔记本,然后做了一些修改、提交。修改完成。
第二天我来到公司(公司里用台式机,不是自己的笔记本),忘了先git pull到本地之后,直接在台式机上的代码进行编写,突然想起忘了pull了,然后想用git pull来更新本地代码。结果报错:
error: Your local changes to the following files would be overwritten by merge:
意思是我台式机上新修改的代码的文件,将会被git服务器上的代码覆盖;我当然不想刚刚写的代码被覆盖掉,看了git的手册,发现可以这样解决:
方法1:如果你想保留刚才本地修改的代码,并把git服务器上的代码pull到本地(本地刚才修改的代码将会被暂时封存起来)
git stash git pull origin master git stash pop
如此一来,服务器上的代码更新到了本地,而且你本地修改的代码也没有被覆盖,之后使用add,commit,push 命令即可更新本地代码到服务器了。
方法2、如果你想完全地覆盖本地的代码,只保留服务器端代码,则直接回退到上一个版本,再进行pull:
git reset --hard git pull origin master
注:其中origin master表示git的主分支。
相关文章推荐
- bootstrap 强调相关的类
- 【动态规划】最长公共子序列(并续)
- POI操作EXCEL(二)
- 【HDU】 `1024 Max Sum Plus Plus
- ETag与Last-Modified头信息用途上的区别
- C++ 访问范围说明符
- 仿微信语音聊天2
- LABVIEW MODBUS协议串口通讯采集温度传感器
- PropertiesUtil 读取配置文件工具类
- Win10如何使用蓝牙传输文件?Win10使用蓝牙传输文件的方法
- IOS 开发-UI初级 (三)控件:UISwitch, UIActivityIndicatorView,UISlider,UISegmentedControl
- Centos7之Nginx反向代理安装
- C++异常处理机制几种方法
- 具体实例教你如何做LoadRunner结果分析
- [my]coolplayer.com的信息
- POI操作EXCEL(一)
- android studio 2.0正式版更新遇到的问题与解决
- Android 多线程断点下载的实现方法
- 100天JAVA学习计划06-多态
- http缓存的使用