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

[PATCH v3 0/2] Object ID support for git merge-file

From
brian m. carlson <sandals@crustytoothpaste.net>
Date
Nov 1, 2023, 19:24 UTC
Message-ID
<20231101192419.794162-1-sandals@crustytoothpaste.net>
In-Reply-To
<20231024195655.2413191-1-sandals@crustytoothpaste.net>

This series introduces an --object-id option to git merge-file such that, instead of reading and writing from files on the system, it reads from and writes to the object store using blobs.

Changes from v2:
* Include a patch from Martin to pre-improve the documentation
* Remove incorrect portion of commit message
Changes from v1:
* Improve error handling
* Re-add `-p` argument for documentation
Martin Ågren (1):
  git-merge-file doc: drop "-file" from argument placeholders
brian m. carlson (1):
  merge-file: add an option to process object IDs
 Documentation/git-merge-file.txt | 38 ++++++++++++++------
 builtin/merge-file.c             | 62 +++++++++++++++++++++++---------
 t/t6403-merge-file.sh            | 58 ++++++++++++++++++++++++++++++
 3 files changed, 132 insertions(+), 26 deletions(-)
Range-diff against v2:
-:  ---------- > 1:  21a96acf42 git-merge-file doc: drop "-file" from argument placeholders
1:  9cd4220a3b ! 2:  b1978a7b5c merge-file: add an option to process object IDs
    @@ Commit message
         Teach it an `--object-id` option which means that its arguments are
         object IDs and not files to allow it to do so.
     
    -    Since we obviously won't be writing the data to the first argument,
    -    imply the -p option so we write to standard output.
    -
         We handle the empty blob specially since read_mmblob doesn't read it
         directly and otherwise users cannot specify an empty ancestor.
     
    @@ Commit message
     
      ## Documentation/git-merge-file.txt ##
     @@ Documentation/git-merge-file.txt: SYNOPSIS
    + [verse]
      'git merge-file' [-L <current-name> [-L <base-name> [-L <other-name>]]]
      	[--ours|--theirs|--union] [-p|--stdout] [-q|--quiet] [--marker-size=<n>]
    - 	[--[no-]diff3] <current-file> <base-file> <other-file>
    -+'git merge-file' --object-id [-L <current-name> [-L <base-name> [-L <other-name>]]]
    -+	[--ours|--theirs|--union] [-p|--stdout] [-q|--quiet] [--marker-size=<n>]
    -+	[--[no-]diff3] <current-oid> <base-oid> <other-oid>
    +-	[--[no-]diff3] <current> <base> <other>
    ++	[--[no-]diff3] [--object-id] <current> <base> <other>
      
      
      DESCRIPTION
    -@@ Documentation/git-merge-file.txt: however, these conflicts are resolved favouring lines from `<current-file>`,
    - lines from `<other-file>`, or lines from both respectively.  The length of the
    +@@ Documentation/git-merge-file.txt: however, these conflicts are resolved favouring lines from `<current>`,
    + lines from `<other>`, or lines from both respectively.  The length of the
      conflict markers can be given with the `--marker-size` option.
      
     +If `--object-id` is specified, exactly the same behavior occurs, except that
Previous: Junio C HamanoNext: brian m. carlson
Message 25 of 34 in “Object ID support for git merge-file”
  1. 0/1 Object ID support for git merge-filebrian m. carlson, Oct 24, 2023
  2. 1/1 merge-file: add an option to process object IDsbrian m. carlson, Oct 24, 2023
  3. Eric SunshineOct 24, 2023
  4. brian m. carlsonOct 24, 2023
  5. Elijah NewrenOct 29, 2023
  6. Phillip WoodOct 29, 2023
  7. brian m. carlsonOct 30, 2023
  8. brian m. carlsonOct 29, 2023
  9. Elijah NewrenOct 30, 2023
  10. Elijah NewrenOct 29, 2023
  11. Phillip WoodOct 29, 2023
  12. Taylor BlauOct 30, 2023
  13. brian m. carlsonOct 30, 2023
  14. Elijah NewrenOct 30, 2023
  15. 0/1 Object ID support for git merge-filebrian m. carlson, Oct 30, 2023
  16. 1/1 merge-file: add an option to process object IDsbrian m. carlson, Oct 30, 2023
  17. Martin ÅgrenOct 31, 2023
  18. brian m. carlsonOct 31, 2023
  19. Junio C HamanoNov 1, 2023
  20. brian m. carlsonNov 1, 2023
  21. Elijah NewrenOct 30, 2023
  22. Junio C HamanoOct 31, 2023
  23. Phillip WoodOct 31, 2023
  24. Junio C HamanoOct 31, 2023
  25. 0/2 Object ID support for git merge-filebrian m. carlson, Nov 1, 2023
  26. 1/2 git-merge-file doc: drop "-file" from argument placeholdersbrian m. carlson, Nov 1, 2023
  27. Junio C HamanoNov 1, 2023
  28. Martin ÅgrenNov 2, 2023
  29. brian m. carlsonNov 2, 2023
  30. Martin ÅgrenNov 2, 2023
  31. Junio C HamanoNov 2, 2023
  32. 2/2 merge-file: add an option to process object IDsbrian m. carlson, Nov 1, 2023
  33. Martin ÅgrenNov 2, 2023
  34. Junio C HamanoNov 1, 2023

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.