<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/git.git/git-bisect.sh, branch v2.7.0-rc2</title>
<subtitle>Git
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/git.git/atom?h=v2.7.0-rc2</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/atom?h=v2.7.0-rc2'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/'/>
<updated>2015-08-03T18:42:43Z</updated>
<entry>
<title>bisect: allow setting any user-specified in 'git bisect start'</title>
<updated>2015-08-03T18:42:43Z</updated>
<author>
<name>Matthieu Moy</name>
<email>Matthieu.Moy@imag.fr</email>
</author>
<published>2015-06-29T15:40:35Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=06e6a745064c4f2f827177f6d92f4b9adb018200'/>
<id>urn:sha1:06e6a745064c4f2f827177f6d92f4b9adb018200</id>
<content type='text'>
This allows a natural user-interface when looking for any change in the
code, not just regression. For example:

git bisect start --term-old fast --term-new slow
git bisect fast
git bisect slow
...

There were several proposed user-interfaces for this feature. This patch
implements it as options to 'git bisect start' for the following reasons:

* By construction, the terms will be valid for one and only one
  bisection.

* Unlike positional arguments, using named options avoid having to
  remember an order.

* We can combine user-defined terms and passing old/new commits as
  argument to "git bisect start".

* The implementation is relatively simple.

See previous discussions:

  http://mid.gmane.org/1435337896-20709-3-git-send-email-Matthieu.Moy@imag.fr

Signed-off-by: Matthieu Moy &lt;Matthieu.Moy@imag.fr&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>bisect: add 'git bisect terms' to view the current terms</title>
<updated>2015-08-03T18:42:42Z</updated>
<author>
<name>Matthieu Moy</name>
<email>Matthieu.Moy@imag.fr</email>
</author>
<published>2015-06-29T15:40:34Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=21b55e33695f47f3e2616d178ab1e06743bfef66'/>
<id>urn:sha1:21b55e33695f47f3e2616d178ab1e06743bfef66</id>
<content type='text'>
Signed-off-by: Matthieu Moy &lt;Matthieu.Moy@imag.fr&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>bisect: add the terms old/new</title>
<updated>2015-08-03T18:42:42Z</updated>
<author>
<name>Antoine Delaite</name>
<email>antoine.delaite@ensimag.grenoble-inp.fr</email>
</author>
<published>2015-06-29T15:40:33Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=21e5cfd8b3d35a702b19be6964b8809045dd6278'/>
<id>urn:sha1:21e5cfd8b3d35a702b19be6964b8809045dd6278</id>
<content type='text'>
When not looking for a regression during a bisect but for a fix or a
change in another given property, it can be confusing to use 'good'
and 'bad'.

This patch introduce `git bisect new` and `git bisect old` as an
alternative to 'bad' and good': the commits which have a certain
property must be marked as `new` and the ones which do not as `old`.

The output will be the first commit after the change in the property.
During a new/old bisect session you cannot use bad/good commands and
vice-versa.

Some commands are still not available for old/new:
     * git rev-list --bisect does not treat the revs/bisect/new and
       revs/bisect/old-SHA1 files.

Old discussions:
	- http://thread.gmane.org/gmane.comp.version-control.git/86063
		introduced bisect fix unfixed to find fix.
	- http://thread.gmane.org/gmane.comp.version-control.git/182398
		discussion around bisect yes/no or old/new.
	- http://thread.gmane.org/gmane.comp.version-control.git/199758
		last discussion and reviews
New discussions:
	- http://thread.gmane.org/gmane.comp.version-control.git/271320
		( v2 1/7-4/7 )
	- http://comments.gmane.org/gmane.comp.version-control.git/271343
		( v2 5/7-7/7 )

Signed-off-by: Antoine Delaite &lt;antoine.delaite@ensimag.grenoble-inp.fr&gt;
Signed-off-by: Louis Stuber &lt;stuberl@ensimag.grenoble-inp.fr&gt;
Signed-off-by: Valentin Duperray &lt;Valentin.Duperray@ensimag.imag.fr&gt;
Signed-off-by: Franck Jonas &lt;Franck.Jonas@ensimag.imag.fr&gt;
Signed-off-by: Lucien Kong &lt;Lucien.Kong@ensimag.imag.fr&gt;
Signed-off-by: Thomas Nguy &lt;Thomas.Nguy@ensimag.imag.fr&gt;
Signed-off-by: Huynh Khoi Nguyen Nguyen &lt;Huynh-Khoi-Nguyen.Nguyen@ensimag.imag.fr&gt;
Signed-off-by: Matthieu Moy &lt;Matthieu.Moy@imag.fr&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>bisect: sanity check on terms</title>
<updated>2015-08-03T18:42:42Z</updated>
<author>
<name>Matthieu Moy</name>
<email>Matthieu.Moy@imag.fr</email>
</author>
<published>2015-06-29T15:40:32Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=fe67687bb1b38cbbdca4339caf14136b33e04783'/>
<id>urn:sha1:fe67687bb1b38cbbdca4339caf14136b33e04783</id>
<content type='text'>
This is currently only a defensive check since the only terms are
bad/good and new/old, which pass it, but this is a preparation step for
accepting user-supplied terms.

Signed-off-by: Matthieu Moy &lt;Matthieu.Moy@imag.fr&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>bisect: don't mix option parsing and non-trivial code</title>
<updated>2015-08-03T18:42:42Z</updated>
<author>
<name>Matthieu Moy</name>
<email>Matthieu.Moy@imag.fr</email>
</author>
<published>2015-06-29T15:40:31Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=4a6ada32cb64b0eba8b6f995e4230f0c722fd580'/>
<id>urn:sha1:4a6ada32cb64b0eba8b6f995e4230f0c722fd580</id>
<content type='text'>
As-is, the revisions that appear on the command-line are processed in
order. This would mix badly with code that changes the configuration
(e.g. change $TERM_GOOD and $TERM_BAD) while processing the options.

Signed-off-by: Matthieu Moy &lt;Matthieu.Moy@imag.fr&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>bisect: simplify the addition of new bisect terms</title>
<updated>2015-08-03T18:42:41Z</updated>
<author>
<name>Antoine Delaite</name>
<email>antoine.delaite@ensimag.grenoble-inp.fr</email>
</author>
<published>2015-06-29T15:40:30Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=cb46d630baf780412f8ca0592531880b592f0922'/>
<id>urn:sha1:cb46d630baf780412f8ca0592531880b592f0922</id>
<content type='text'>
We create a file BISECT_TERMS in the repository .git to be read during a
bisection. There's no user-interface yet, but "git bisect" works if terms
other than old/new or bad/good are set in .git/BISECT_TERMS. The
fonctions to be changed if we add new terms are quite few.

In git-bisect.sh:
	check_and_set_terms
	bisect_voc

Co-authored-by: Louis Stuber &lt;stuberl@ensimag.grenoble-inp.fr&gt;
Tweaked-by: Matthieu Moy &lt;Matthieu.Moy@imag.fr&gt;
Signed-off-by: Antoine Delaite &lt;antoine.delaite@ensimag.grenoble-inp.fr&gt;
Signed-off-by: Louis Stuber &lt;stuberl@ensimag.grenoble-inp.fr&gt;
Signed-off-by: Valentin Duperray &lt;Valentin.Duperray@ensimag.imag.fr&gt;
Signed-off-by: Franck Jonas &lt;Franck.Jonas@ensimag.imag.fr&gt;
Signed-off-by: Lucien Kong &lt;Lucien.Kong@ensimag.imag.fr&gt;
Signed-off-by: Thomas Nguy &lt;Thomas.Nguy@ensimag.imag.fr&gt;
Signed-off-by: Huynh Khoi Nguyen Nguyen &lt;Huynh-Khoi-Nguyen.Nguyen@ensimag.imag.fr&gt;
Signed-off-by: Matthieu Moy &lt;Matthieu.Moy@imag.fr&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>bisect: replace hardcoded "bad|good" by variables</title>
<updated>2015-06-29T20:19:12Z</updated>
<author>
<name>Antoine Delaite</name>
<email>antoine.delaite@ensimag.grenoble-inp.fr</email>
</author>
<published>2015-06-29T15:40:29Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=43f9d9f3a6c6004853fcc7b283dafc3590478498'/>
<id>urn:sha1:43f9d9f3a6c6004853fcc7b283dafc3590478498</id>
<content type='text'>
To add new tags like old/new and have keywords less confusing, the
first step is to avoid hardcoding the keywords.

The default mode is still bad/good.

Signed-off-by: Antoine Delaite &lt;antoine.delaite@ensimag.grenoble-inp.fr&gt;
Signed-off-by: Louis Stuber &lt;stuberl@ensimag.grenoble-inp.fr&gt;
Signed-off-by: Valentin Duperray &lt;Valentin.Duperray@ensimag.imag.fr&gt;
Signed-off-by: Franck Jonas &lt;Franck.Jonas@ensimag.imag.fr&gt;
Signed-off-by: Lucien Kong &lt;Lucien.Kong@ensimag.imag.fr&gt;
Signed-off-by: Thomas Nguy &lt;Thomas.Nguy@ensimag.imag.fr&gt;
Signed-off-by: Huynh Khoi Nguyen Nguyen &lt;Huynh-Khoi-Nguyen.Nguyen@ensimag.imag.fr&gt;
Signed-off-by: Matthieu Moy &lt;Matthieu.Moy@imag.fr&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>standardize usage info string format</title>
<updated>2015-01-14T17:32:04Z</updated>
<author>
<name>Alex Henrie</name>
<email>alexhenrie24@gmail.com</email>
</author>
<published>2015-01-13T07:44:47Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=9c9b4f2f8b7f27f3984e80d053106d5d41cbb03b'/>
<id>urn:sha1:9c9b4f2f8b7f27f3984e80d053106d5d41cbb03b</id>
<content type='text'>
This patch puts the usage info strings that were not already in docopt-
like format into docopt-like format, which will be a litle easier for
end users and a lot easier for translators. Changes include:

- Placing angle brackets around fill-in-the-blank parameters
- Putting dashes in multiword parameter names
- Adding spaces to [-f|--foobar] to make [-f | --foobar]
- Replacing &lt;foobar&gt;* with [&lt;foobar&gt;...]

Signed-off-by: Alex Henrie &lt;alexhenrie24@gmail.com&gt;
Reviewed-by: Matthieu Moy &lt;Matthieu.Moy@imag.fr&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>bisect: parse revs before passing them to check_expected_revs()</title>
<updated>2014-12-29T19:19:55Z</updated>
<author>
<name>Christian Couder</name>
<email>chriscool@tuxfamily.org</email>
</author>
<published>2014-12-25T18:25:32Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=6bc02d5627358f6a264c5dbb159b5a9aeb44ebf4'/>
<id>urn:sha1:6bc02d5627358f6a264c5dbb159b5a9aeb44ebf4</id>
<content type='text'>
When running for example "git bisect bad HEAD" or
"git bisect good master", the parameter passed to
"git bisect (bad|good)" has to be parsed into a
commit hash before checking if it is the expected
commit or not.

We could do that in is_expected_rev() or in
check_expected_revs(), but it is already done in
bisect_state(). Let's just store the hash values
that result from this parsing, and then reuse
them after all the parsing is done.

This way we can also use a for loop over these
values to call bisect_write() on them, instead of
using eval.

Signed-off-by: Christian Couder &lt;chriscool@tuxfamily.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>grammofix in user-facing messages</title>
<updated>2014-09-02T19:00:30Z</updated>
<author>
<name>Alex Henrie</name>
<email>alexhenrie24@gmail.com</email>
</author>
<published>2014-08-30T19:56:01Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=ad5fe3771b50f3862130d150b5cc8bb316ef6f1c'/>
<id>urn:sha1:ad5fe3771b50f3862130d150b5cc8bb316ef6f1c</id>
<content type='text'>
Signed-off-by: Alex Henrie &lt;alexhenrie24@gmail.com&gt;
Acked-by: Johan Herland &lt;johan@herland.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
