所以我想弄清楚一个奇怪的问题,提交进行,合并到我们的主分支,但随后在提交代码捆绑对此承诺似乎只是消失。提交散列是4516ce019
和github提交仍然在树上,以及我的本地git分支。从git的日志摘录在主分支:提交是在git树,但似乎并没有应用于代码
commit 02659934ce32a4e700e1a7116685933e40a58b7f
Author: Jordan Earls <[email protected]>
Date: Thu Jun 29 18:50:22 2017 -0400
Add RPC commands gethexaddress and fromhexaddress
These RPC commands can be used to convert to and from base58 addressses
to hex addresses as used in smart contracts
commit 2c15f54789ab4f4e6d3b735aa6849111b5c9299d
Merge: 14c08352c 4516ce019
Author: qtum-neil <[email protected]>
Date: Wed Jun 28 22:52:20 2017 +0000
Merge pull request #213 from qtumproject/earlz/add-block-author
Change block author to be 2nd vout/2nd tx for PoS
如果你看一下git blame上作出承诺,事情似乎正确,则是存在的。但是,在主分支上的后续提交与完全不同的git blame好像提交不存在一样。 (称代码在5个月前修改,而不是2个月前)。
究竟发生了什么?我有一种感觉,这是一个合并冲突不好,但即使是最近的合并和/或混帐也会出现这种情况。我无法重现这一点,并且在此次提交之后我们从未强迫推送到这个分支(之前我们已经设置过)。
有没有人有任何指导如何这是可能的,以及如何精确地查明事情出错的地方?此问题在我们的代码库中引入了一个小的安全漏洞,因此了解为什么发生这种情况很重要;当然修复的方法是只是做一个樱桃选择拉回这个承诺回来。
编辑:使用git fsck --unreachable --no-reflog
显示没有孤立的提交,所以我只有一个合并留下提交背后的预感似乎并非如此
0265的父项是a633 – ninjalj