git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v2 00/10] teach replace objects to sha1_object_info_extended()

From
Christian Couder <chriscool@tuxfamily.org>
Date
Dec 7, 2013, 16:20 UTC
Message-ID
<20131207160514.21478.72966.chriscool@tuxfamily.org>

Here is version 2 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

Patches 1/10, 2/10 and 3/10 are cleanups, among them only 1/10 is new. Patches 4/10, 5/10 and 6/10 were also in the previous version.

Patches 7/10, 8/10, 9/10 and 10/10 are new. They add a new --format option to list replace refs. 'short' (which is the default), 'medium' and 'full' formats are supported. This could be considered another patch series, but it is also related, because it uses sha1_object_info() and it fixes its use in builtin/replace.c by unsetting the global variable read_replace_refs in cmd_replace().

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 full 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             | 63 ++++++++++++++++++++++++++++++++++++++-----
 cache.h                       | 12 ++++++---
 replace_object.c              |  3 ---
 sha1_file.c                   | 20 +++++++-------
 streaming.c                   |  2 +-
 t/t6050-replace.sh            | 32 ++++++++++++++++++++++
 8 files changed, 127 insertions(+), 26 deletions(-)
-- 
1.8.5.1.102.g090758b
Next: Christian Couder
Message 1 of 15 in “teach replace objects to sha1_object_info_extended()”
  1. 00/10 teach replace objects to sha1_object_info_extended()Christian Couder, Dec 7, 2013
  2. 01/10 Rename READ_SHA1_FILE_REPLACE flag to LOOKUP_REPLACE_OBJECTChristian Couder, Dec 7, 2013
  3. 02/10 replace_object: don't check read_replace_refs twiceChristian Couder, Dec 7, 2013
  4. 03/10 Introduce lookup_replace_object_extended() to pass flagsChristian Couder, Dec 7, 2013
  5. 04/10 Add an "unsigned flags" parameter to sha1_object_info_extended()Christian Couder, Dec 7, 2013
  6. 05/10 t6050: show that git cat-file --batch fails with replace objectsChristian Couder, Dec 7, 2013
  7. 06/10 sha1_file: perform object replacement in sha1_object_info_extended()Christian Couder, Dec 7, 2013
  8. 07/10 builtin/replace: teach listing using short, medium or full formatsChristian Couder, Dec 7, 2013
  9. 08/10 t6050: add tests for listing with --formatChristian Couder, Dec 7, 2013
  10. Eric SunshineDec 9, 2013
  11. Christian CouderDec 9, 2013
  12. 09/10 builtin/replace: unset read_replace_refsChristian Couder, Dec 7, 2013
  13. Jakub NarebskiDec 7, 2013
  14. Christian CouderDec 7, 2013
  15. 10/10 Documentation/git-replace: describe --format optionChristian Couder, Dec 7, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.