All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC 0/9] bisect: allow git bisect to be used with repos containing damaged trees.
@ 2011-07-24  5:57 Jon Seymour
  2011-07-24  5:57 ` [PATCH 1/9] bisect: add tests to document expected behaviour in presence of broken trees Jon Seymour
                   ` (10 more replies)
  0 siblings, 11 replies; 21+ messages in thread
From: Jon Seymour @ 2011-07-24  5:57 UTC (permalink / raw)
  To: git; +Cc: Jon Seymour

Currently git bisect assumes that the respository to be undamaged. This limits the usefulness
of git bisect when working with damaged repositories.

This series introduces an option, --ignore-checkout-failure, which can be used with 
"git bisect start" to indicate that checkout failures should be tolerated for the life
of the (new) bisection process. This allows git bisect to be used on damaged repositories. In
particular, it allows git bisect to be used to locate commits containing damaged trees.

If the --ignore-checkout-failure option is specified, then if git checkout fails either 
at the start of the bisection process or later while probing a new trial commit, then the 
checkout failure will be noisily ignored and the HEAD reference will be updated to the 
intended commit. This may leave the working tree and index in an inconsistent state
w.r.t the HEAD commit.

"git bisect reset" uses the same logic to restore the original HEAD reference. This allows
"git bisect reset" to work in circumstances where it might otherwise fail (for example, if 
the current HEAD contains a damaged tree).

Jon Seymour (9):
  bisect: add tests to document expected behaviour in presence of
    broken trees.
  bisect: introduce a --ignore-checkout-failure option to
    bisect--helper.
  bisect: implement support for --ignore-checkout-failure option
  bisect: introduce a helper function to tolerate checkout failures.
  bisect: replace existing calls to git checkout with
    bisect_checkout_with_ignore
  bisect: enable --ignore-checkout-failure in the porcelain.
  bisect: better diagnostics, in case of mis-typed option.
  bisect: add tests for --ignore-checkout-failure option.
  bisect: add documentation for --ignore-checkout-failure option.

 Documentation/git-bisect.txt |   13 ++++-
 bisect.c                     |   18 ++++++-
 bisect.h                     |    2 +-
 builtin/bisect--helper.c     |    8 ++-
 git-bisect.sh                |   36 +++++++++++--
 t/t6030-bisect-porcelain.sh  |  119 ++++++++++++++++++++++++++++++++++++++++++
 6 files changed, 186 insertions(+), 10 deletions(-)

-- 
1.7.6.347.g96e0b.dirty

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2011-07-26 13:28 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-07-24  5:57 [RFC 0/9] bisect: allow git bisect to be used with repos containing damaged trees Jon Seymour
2011-07-24  5:57 ` [PATCH 1/9] bisect: add tests to document expected behaviour in presence of broken trees Jon Seymour
2011-07-24  5:57 ` [PATCH 2/9] bisect: introduce a --ignore-checkout-failure option to bisect--helper Jon Seymour
2011-07-24  5:57 ` [PATCH 3/9] bisect: implement support for --ignore-checkout-failure option Jon Seymour
2011-07-24  5:57 ` [PATCH 4/9] bisect: introduce a helper function to tolerate checkout failures Jon Seymour
2011-07-24  5:57 ` [PATCH 5/9] bisect: replace existing calls to git checkout with bisect_checkout_with_ignore Jon Seymour
2011-07-24  5:57 ` [PATCH 6/9] bisect: enable --ignore-checkout-failure in the porcelain Jon Seymour
2011-07-24  5:57 ` [PATCH 7/9] bisect: better diagnostics, in case of mis-typed option Jon Seymour
2011-07-24  5:57 ` [PATCH 8/9] bisect: add tests for --ignore-checkout-failure option Jon Seymour
2011-07-24  5:57 ` [PATCH 9/9] bisect: add documentation " Jon Seymour
2011-07-24  8:05 ` [RFC 0/9] bisect: allow git bisect to be used with repos containing damaged trees Johannes Sixt
2011-07-24  8:54   ` Jon Seymour
2011-07-24 18:35 ` Junio C Hamano
2011-07-25  9:28   ` Jon Seymour
2011-07-25 18:14     ` Junio C Hamano
2011-07-25 23:27       ` Jon Seymour
2011-07-25 18:48     ` Johannes Sixt
2011-07-25 23:38       ` Jon Seymour
2011-07-26  7:43         ` Jakub Narebski
2011-07-26  8:26           ` Jon Seymour
2011-07-26 13:28           ` Jon Seymour

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.