This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
howto:bisect [2010/12/02 18:44] mcb30 |
howto:bisect [2023/01/20 09:59] (current) mcb30 |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Finding a bug using bisection ====== | + | ====== Finding a bug using git-bisect ====== |
''git-bisect'' is a powerful tool for quickly tracking down the precise change that introduced a bug in iPXE. If you are encountering a problem with the [[:download|latest version]] of iPXE, and you know that an older version of iPXE does not have the same problem, then you can use ''git-bisect''. | ''git-bisect'' is a powerful tool for quickly tracking down the precise change that introduced a bug in iPXE. If you are encountering a problem with the [[:download|latest version]] of iPXE, and you know that an older version of iPXE does not have the same problem, then you can use ''git-bisect''. | ||
Line 11: | Line 11: | ||
First, check out a copy of the iPXE source tree: | First, check out a copy of the iPXE source tree: | ||
- | git clone git://git.ipxe.org/ipxe.git | + | git clone https://github.com/ipxe/ipxe.git |
and verify that you are able to build iPXE: | and verify that you are able to build iPXE: | ||
Line 36: | Line 36: | ||
''git-bisect'' will choose a version midway between your stated "good" and "bad" versions. For example: | ''git-bisect'' will choose a version midway between your stated "good" and "bad" versions. For example: | ||
- | [mcb30@dolphin] git bisect good v1.0.0 | + | [mcb30@dolphin]$ git bisect good v1.0.0 |
Bisecting: 187 revisions left to test after this (roughly 8 steps) | Bisecting: 187 revisions left to test after this (roughly 8 steps) | ||
[28934ee] [retry] Hold reference while timer is running | [28934ee] [retry] Hold reference while timer is running | ||
Line 64: | Line 64: | ||
| | ||
[vlan] Allow duplicate VLAN creation attempts | [vlan] Allow duplicate VLAN creation attempts | ||
- | |||
- | {{ :clipart:envelope.jpeg?200x101|An envelope}} | ||
If you have followed the process correctly, then this is the commit that introduced the bug. You can now [[:contact|contact the developers]] with details of your bug, including the "first bad commit" (''7e1b1d6145a36ae7ad1c58663c7116f96fada1f9'' in the above example). | If you have followed the process correctly, then this is the commit that introduced the bug. You can now [[:contact|contact the developers]] with details of your bug, including the "first bad commit" (''7e1b1d6145a36ae7ad1c58663c7116f96fada1f9'' in the above example). | ||
+ | |||
+ | {{ :clipart:envelope.jpeg?200x101 |An envelope}} | ||
===== Tidying up ===== | ===== Tidying up ===== |