解决error: Your local changes to the following files would be overwritten by merge
在项目里我们一般都会把自己第一次提交的配置文件忽略本地跟踪
|
1
|
[Sun@webserver2 demo]$ git update-index --assume-unchanged <filename> |
但是项目里的其他人如果不小心把该配置文件修改push到远程仓库之后,我们git pull代码的时候就会报错
|
1
2
3
4
5
6
7
8
9
10
11
12
13
|
[Sun@webserver2 demo]$ git add .[Sun@webserver2 demo]$ git commit -m 'update:index.php'[master f8a7428] update:index.php 1 file changed, 1 insertion(+), 1 deletion(-)[Sun@webserver2 demo]$ git pullremote: Counting objects: 5, done.remote: Compressing objects: 100% (2/2), done.remote: Total 3 (delta 1), reused 0 (delta 0)Unpacking objects: 100% (3/3), done.From git.oschina.net:sunzmit/thinkphp 1bc9485..c63dff3 master -> origin/mastererror: Your local changes to the following files would be overwritten by merge: config.ini |
大意是:您的本地更改的文件将被合并覆盖。并指出了会被覆盖的文件
解决方法:
1.撤销本地对文件的忽略
|
1
|
[Sun@webserver2 demo]$ git update-index --no-assume-unchanged config.ini |
2.从最近的一次提交中读取内容,备份当前的工作区的内容,将当前的工作区内容保存到Git栈中
|
1
2
3
|
[Sun@webserver2 demo]$ git stashSaved working directory and index state WIP on master: f8a7428 update:index.phpHEAD is now at f8a7428 update:index.php |
3.pull远程仓库代码
|
1
2
3
4
|
[Sun@webserver2 demo]$ git pullMerge made by the 'recursive' strategy. config.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) |
4.从Git栈中读取最近一次保存的内容,恢复工作区的相关内容
|
1
2
3
|
[Sun@webserver2 demo]$ git stash popAuto-merging config.iniCONFLICT (content): Merge conflict in config.ini |
5.修改合并
|
1
2
3
4
5
6
7
8
|
[Sun@webserver2 demo]$ vim config.ini<<<<<<< Updated upstreamThis is a test file!!!!!!!!!!!!!!!!=======This is a test file>>>>>>> Stashed changes[Sun@webserver2 demo]$ cat test.txtThis is a test file |
<<<<<<< Updated upstream到=======中是从远程仓库pull下来别人的内容,=======到>>>>>>> Stashed changes中是我们本地文件内容,现在我们可以删除其他,只保留自己的内容This is a test file
6.把文件回复到最新提交的版本,会保留修改内容
|
1
2
3
4
5
|
[Sun@webserver2 demo]$ git reset HEAD config.iniUnstaged changes after reset:M config.ini[Sun@webserver2 demo]$ cat test.txtThis is a test file |
7.再次忽略本地跟踪,完成!
|
1
|
[Sun@webserver2 demo]$ git update-index --assume-unchanged config.ini |
8.最后不要忘记清除Git栈的备份
|
1
|
[Sun@webserver2 demo]$ git stash drop |
本文永久地址:http://blog.it985.com/10665.html
本文出自 IT985博客 ,转载时请注明出处及相应链接。
解决error: Your local changes to the following files would be overwritten by merge的更多相关文章
- 解决 error: Your local changes to the following files would be overwritten by merge:XXXX
版权声明:这可是本菇凉辛辛苦苦原创的,转载请记得带上我家地址,不要忘记了哈 ... https://blog.csdn.net/u011314442/article/details/78852547 ...
- git error: Your local changes to the following files would be overwritten by merge:xxxxxx ,Please commit your changes or stash them before you merge.的phpstorm解决办法
git报错 error: Your local changes to the following files would be overwritten by merge: .idea/encoding ...
- Git版本控制工具使用:Error pulling origin: error: Your local changes to the following files would be overwritten by merge
摘自: CSDN 逆觞 git在pull时,出现这种错误的时候,可能很多人进进行stash,相关stash的请看:Error pulling origin: error: Your local cha ...
- Error pulling origin: error: Your local changes to the following files would be overwritten by merge
Git在pull时,出现这种错误的时候,可能很多人进进行stash,相关stash的请看:Error pulling origin: error: Your local changes to the ...
- Git出现error: Your local changes to the following files would be overwritten by merge: ... Please, commit your changes or stash them before you can merge.的问题解决(Git代码冲突)
在使用git pull拉取服务器最新版本时,如果出现error: Your local changes to the following files would be overwritten by m ...
- Laravel 5.2--git冲突error: Your local changes to the following files would be overwritten by merge:
今天在服务器上git pull是出现以下错误: error: Your local changes to the following files would be overwritten by mer ...
- git pull的时候发生冲突的解决方法之“error: Your local changes to the following files would be overwritten by merge”
今天在使用git pull 命令的时候发生了以下报错 目前git的报错提示已经相关友好了,可以直观的发现,这里可以通过commit的方式解决这个冲突问题,但还是想看看其他大佬是怎么解决这类问题的 在网 ...
- 在Linux上git pull线上仓库代码时,出现error: Your local changes to the following files would be overwritten by merge
在Windows上工作时未出现过该问题,于是通过命令: git diff 查看差异,得到结果: diff --git a/start_crons.sh b/start_crons.sh old mod ...
- Git pull error: Your local changes to the following files would be overwritten by merge:
联合开发,遇上的一个问题,果然,在此验证了百度的不靠谱,是谷歌出的答案...... stackoverflow上有解决方案,链接:http://stackoverflow.com/questions/ ...
随机推荐
- pgrep -f 和pkill -f
pgrep -f abc 匹配出含abc的进程 并输出进程的pid pkill -f abc 杀掉含abc的所有进程
- jQuery.extend()中的布尔值的作用
jQuery.extend()中,第一个参数可以添加一个布尔值,表示是否深层拷贝,默认是false.但如果设置为true,则表示深层拷贝. 下面来看看什么是深层拷贝: <script type= ...
- MAC下cmake安装
可以参考网上手动下载cmake的源码包进行安装,http://www.cmake.org/download/ 解压后运行sudo ./bootstrap && sudo make &a ...
- LeetCode: Longest Consecutive Sequence 解题报告
Longest Consecutive Sequence Given an unsorted array of integers, find the length of the longest con ...
- C#通过“委托和事件”的方式实现进程监控并与“普通方式”对比
今天重新学习了一下观察者模式,对我的思路产生了启发.进程监控程序之前写过几个,这回换一种思路,改用委托和事件来实现.我已经用序号将关键的几步标注,方便大家理顺思路.代码如下: using System ...
- python 读取文件、并以十六进制的方式写入到新文件
#!/usr/bin/env python infile = file("in.mp3","rb") outfile = file("out.txt& ...
- ioss使用xcode常用快捷键
// command+r 运行 //command+.停止 // command+shift+y 弹出打印区 // command+z 回退 //command+shift+z 前进 // comma ...
- yum命令与使用
check Check for problems in the rpmdbcheck-update Check for available package updatesclea ...
- cglib 动态代理基础篇
cglib 动态代理基础篇 CGlib是什么? CGlib是一个强大的,高性能,高质量的Code生成类库.它可以在运行期扩展Java类与实现Java接口. 下面我们将通过一个具体的事例来看一下CGli ...
- 记录github 免登陆用户名密码方式
1.https 代码模式切换为ssh模式: (本博客有文章介绍) 2.~/.ssh/github_rsa.pub 内容添加到github “config“ 目录下面 3.配置~/.ssh/config ...