Git 应用补丁报错 “sha1 information is lacking or useless”
因为现场代码在客户局域网内,不能连接到公司网络,所以一般更新的时候都是打补丁,
然后在客户现场应用补丁,但是最近在应用补丁的时候出现了如下问题:
...
fatal: sha1 information is lacking or useless (config.xml).
...
这里使用的 GitExtension 的图形化界面管理版本库,进行补丁的生成和应用,
GitExtension 默认使用 3way-merge 来应用补丁,生成和应用补丁的命令如下:
# 生成补丁
> git format-patch -s (commit_id)
# 应用补丁
> git am --3way --signoff 0001.patch
解决办法:
总的来说就是强制应用补丁,手动解决文件问题,然后在继续应用补丁即可
执行
git am --3way --signoff --reject 0001.path命令应用补丁,
并将补丁中不可应用的部分保存在*.rej文件中,例如:以上面的报错信息来说,
就会多出来一个config.xml.rej文件来标识不可应用的部分根据
*.rej文件修改没有应用完全的文件,我在处理的时候就比较生猛,
直接删除*.rej文件,然后将修改后的文件覆盖然后将需要提交的文件添加到缓存区
git add ...,因为应用补丁的过程基本就是修改文件,
添加文件到缓存区,提交修改,由于修改文件的时候产生过了错误,
所以应用补丁过程就停在了修改文件环节,再继续执行时我们就需要将需要提交的文件添加到缓存区最后执行
git am --continue来继续执行补丁的应用即可
以上,既是 sha1 information is lacking or useless 的解决办法,
后经同事指导,还有更加生猛的办法... ...直接将版本库 .git 拷贝过去覆盖... ...
参考链接:
http://stackoverflow.com/questions/25846189/git-am-error-patch-does-not-apply
Git 应用补丁报错 “sha1 information is lacking or useless”的更多相关文章
- 在使用 Git pull 时候报错 error: inflate
在使用 Git pull 时候报错 error: inflate 具体的错误是 这样的 error: inflate: data stream error (unknown compression m ...
- git同步遇到报错
git同步遇到报错 “fatal: unable to access ‘https://github.com/ruanwenwu/newp.git/‘: Peer reports incompatib ...
- git https 请求报错 504
git https 请求报错 504 原因可能是因为设置了代理,ubuntu/deepin 系统可以检查 /etc/profile ~/.bashrc 内有没有设置 https 的代理. 有的话,去掉 ...
- git切换分支报错:error: pathspec 'origin/XXX' did not match any file(s) known to git
项目上有一个分支test,使用git branch -a看不到该远程分支,直接使用命令git checkout test报错如下: error: pathspec 'origin/test' did ...
- 给sql server2005打补丁报错:无法安装Windows Installer MSP文件
给sql server2005打补丁报错:无法安装Windows Installer MSP文件 在我们安装完SQL2005数据库后,需要安装SP4补丁时,会出错:无法安装Windows Instal ...
- git同步遇到报错“fatal: unable to access 'https://github.com/lizhong24/mysite2.git/': Peer reports incompatible or unsupported protocol version.”
git同步遇到报错“fatal: unable to access 'https://github.com/lizhong24/mysite2.git/': Peer reports incompat ...
- git提交代码报错 trailing whitespace的解决方法
1. git提交代码报错 trailing whitespace 禁止执行pre-commit脚本 进入到项目目录中 chmod a-x .git/hooks/pre-commit 2.git提交代码 ...
- Git提交代码报错Git push error:src refspec XXX matches more than one解决方案
Git提交代码push时,报错这个 error: src refspec master matches more than one. error: failed to push some refs t ...
- git statsh命令报错解决
git stash命令主要用于当在一个分支的开发工作未完成,却又要切换到另外一个分支进行开发的时候,除了commit原分支的代码改动的方法外,提供暂存代码的方式. git stash命令参考这篇:ht ...
随机推荐
- 传说是小米家的一道面试题难倒了某Java程序员。扑克牌排序问题。
网上说的是有位网友在面试小米Java岗三次后,终于挺进了第三轮面试,结果还是败在了两道算法题上面. 1.写个读方法和写方法,实现读写锁 2.一副从1到n的牌,每次从牌堆顶取一张放桌子上,再取一张放牌堆 ...
- Quartus II 项目文件分类及内容
- 20145234黄斐《Java程序设计》第七周学习总结
教材学习内容总结 Lambda语法 Lambda去可以重复,符合DRY原则,而且Lambda表达式可读性更好,操作更简单 匿名类型最大的问题就在于其冗余的语法,lambda表达式是匿名方法,它提供了轻 ...
- 成都Uber优步司机奖励政策(1月19日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...
- 成都Uber优步司机奖励政策(1月8日)
1月8日 奖励政策 滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblog ...
- Hough变换-理解篇
Hough变换-理解篇 霍夫变换(Hough Transform)是图像处理中的一种特征提取技术,它通过一种投票算法检测具有特定形状的物体.该过程在一个参数空间中通过计算累计结果的局部最大值得到一个符 ...
- ORB-SLAM(九)LocalMapping
LocalMapping作用是将Tracking中送来的关键帧放在mlNewKeyFrame列表中:处理新关键帧,地图点检查剔除,生成新地图点,Local BA,关键帧剔除.主要工作在于维护局部地图, ...
- verilog入门语法学习-第1篇
1. 如何观察被测模块的响应: 在initial 块中,用系统任务$time 和 $monitor $time 返回当前的仿真时刻 $monitor 只要在其变量列表中有某一个或某几个变 量值发生变化 ...
- vuecli结合eslint静态检查
vuecli结合eslint静态检查 搭建vue项目开发可能选择vue-cli项目脚手架快速创建vue项目.(https://github.com/vuejs/vue-cli) 安装vue-cli n ...
- 「日常训练」Watering Flowers(Codeforces Round #340 Div.2 C)
题意与分析 (CodeForces 617C) 题意是这样的:一个花圃中有若干花和两个喷泉,你可以调节水的压力使得两个喷泉各自分别以\(r_1\)和\(r_2\)为最远距离向外喷水.你需要调整\(r_ ...