Here is version 4 of a patch series to improve the way
sha1_object_info_extended() behaves when it is passed a
replaced object. The idea is to add a flags argument to it
in the same way as what has been done to read_sha1_file().

This patch series was inspired by a sub thread in this

The only changes compared to version 3 are the following:

        - the name of the 'full' format is now 'long'

        - the names of the replace_format enum fields
        have been prepended with 'REPLACE_FORMAT_'. This
        avoids a compilation conflict on Windows where
        SHORT is predefined. Thanks to Karsten for
        reporting this problem.

These changes only affect patches 7/10, 8/10, 9/10 and 10/10
that add a new --format option to list replace refs.

Christian Couder (10):
  replace_object: don't check read_replace_refs twice
  Introduce lookup_replace_object_extended() to pass flags
  Add an "unsigned flags" parameter to sha1_object_info_extended()
  t6050: show that git cat-file --batch fails with replace objects
  sha1_file: perform object replacement in sha1_object_info_extended()
  builtin/replace: teach listing using short, medium or long formats
  t6050: add tests for listing with --format
  builtin/replace: unset read_replace_refs
  Documentation/git-replace: describe --format option

 Documentation/git-replace.txt | 19 +++++++++++-
 builtin/cat-file.c            |  2 +-
 builtin/replace.c             | 67 ++++++++++++++++++++++++++++++++++++++-----
 cache.h                       | 12 ++++++--
 replace_object.c              |  3 --
 sha1_file.c                   | 20 ++++++-------
 streaming.c                   |  2 +-
 t/            | 42 +++++++++++++++++++++++++++
 8 files changed, 141 insertions(+), 26 deletions(-)


To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to
More majordomo info at

Reply via email to