Re: [git-for-windows] Re: Continuous Testing of Git on Windows
From: Philip Oakley <hidden>
Date: 2017-02-14 23:27:07
From: "Christian Couder" <redacted>
On Tue, Feb 14, 2017 at 10:08 PM, Junio C Hamano [off-list ref] wrote:quoted
Johannes Schindelin [off-list ref] writes:quoted
On Mon, 13 Feb 2017, Junio C Hamano wrote:quoted
Johannes Schindelin [off-list ref] writes:quoted
That is why I taught the Git for Windows CI job that tests the four upstream Git integration branches to *also* bisect test breakages and then upload comments to the identified commit on GitHubGood. I do not think it is useful to try 'pu' as an aggregate and expect it to always build and work [*1*], but your "bisect and pinpoint" approach makes it useful to identify individual topic that brings in a breakage.Sadly the many different merge bases[*1*] between `next` and `pu` (which are the obvious good/bad points for bisecting automatically) bring my build agents to its knees. I may have to disable the bisecting feature as a consequence.Yeah, this is a bug in the bisect algorithm. Fixing it is in the GSoC 2017 Ideas.
There are also a few ideas at the SO answers: http://stackoverflow.com/a/5652323/717355
quoted
Probably a less resource intensive approach is to find the tips of the topics not in 'next' but in 'pu' and test them. That would give you which topic(s) are problematic, which is a better starting point than "Oh, 'pu' does not build". After identifying which branch is problematic, bisection of individual topic would be of more manageable size.It is still probably more resource intensive than it couls be. [...]quoted
This is one of these times I wish "git bisect --first-parent" were available.Implementing "git bisect --first-parent" is also part of the GSoC 2017 Ideas. By the way it should not be very difficult as a patch to do this and more was proposed a long time ago: https://public-inbox.org/git/4D3CDDF9.6080405@intel.com/quoted
The above "log" gives me 27 merges right now, which should be bisectable within 5 rounds to identify a single broken topic (if there is only one breakage, that is).
-- Philip