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

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

From
Christian Couder <chriscool@tuxfamily.org>
Date
Dec 28, 2013, 11:00 UTC
Message-ID
<20131228105505.2272.58873.chriscool@tuxfamily.org>

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
Next: Christian Couder
Message 1 of 13 in “teach replace objects to sha1_object_info_extended()”
  1. 00/10 teach replace objects to sha1_object_info_extended()Christian Couder, Dec 28, 2013
  2. 01/10 Rename READ_SHA1_FILE_REPLACE flag to LOOKUP_REPLACE_OBJECTChristian Couder, Dec 28, 2013
  3. 02/10 replace_object: don't check read_replace_refs twiceChristian Couder, Dec 28, 2013
  4. 03/10 Introduce lookup_replace_object_extended() to pass flagsChristian Couder, Dec 28, 2013
  5. 04/10 Add an "unsigned flags" parameter to sha1_object_info_extended()Christian Couder, Dec 28, 2013
  6. 05/10 t6050: show that git cat-file --batch fails with replace objectsChristian Couder, Dec 28, 2013
  7. 06/10 sha1_file: perform object replacement in sha1_object_info_extended()Christian Couder, Dec 28, 2013
  8. 07/10 builtin/replace: teach listing using short, medium or long formatsChristian Couder, Dec 28, 2013
  9. 08/10 t6050: add tests for listing with --formatChristian Couder, Dec 28, 2013
  10. 09/10 builtin/replace: unset read_replace_refsChristian Couder, Dec 28, 2013
  11. 10/10 Documentation/git-replace: describe --format optionChristian Couder, Dec 28, 2013
  12. Junio C HamanoDec 30, 2013
  13. Christian CouderDec 31, 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.