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 discussion: http://thread.gmane.org/gmane.comp.version-control.git/238118 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): Rename READ_SHA1_FILE_REPLACE flag to LOOKUP_REPLACE_OBJECT 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/t6050-replace.sh | 42 +++++++++++++++++++++++++++ 8 files changed, 141 insertions(+), 26 deletions(-) -- 1.8.4.1.616.g07f5c81 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html