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

[PATCH] bundle doc: rewrite the "DESCRIPTION" section

From
Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date
Jun 7, 2021, 14:37 UTC
Message-ID
<patch-1.1-4e736877d1-20210607T143643Z-avarab@gmail.com>

Rewrite the "DESCRIPTION" section for "git bundle" to start by talking about what bundles are in general terms, rather than diving directly into one example of what they might be used for. This changes documentation that's been substantially the same ever since the command was added in 2e0afafebd8 (Add git-bundle: move objects and references by archive, 2007-02-22).

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
---
 Documentation/git-bundle.txt | 31 ++++++++++++++++++++++---------
 1 file changed, 22 insertions(+), 9 deletions(-)
diff --git a/Documentation/git-bundle.txt b/Documentation/git-bundle.txt
index 53804cad4b..1d7c6bdbb2 100644
--- a/Documentation/git-bundle.txt
+++ b/Documentation/git-bundle.txt
@@ -3,7 +3,7 @@ git-bundle(1)
 
 NAME
 ----
-git-bundle - Move objects and refs by archive
+git-bundle - Create, unpack and manipulate "bundles"
 
 
 SYNOPSIS
@@ -18,15 +18,25 @@ SYNOPSIS
 DESCRIPTION
 -----------
 
-Some workflows require that one or more branches of development on one
-machine be replicated on another machine, but the two machines cannot
-be directly connected, and therefore the interactive Git protocols (git,
-ssh, http) cannot be used.
+Create, unpack and manipulate "bundles" (.bundle) files. Bundles are
+.pack files (see linkgit:git-pack-objects[1]) with a header indicating
+what references are contained within the bundle. The header is in the
+format emitted by linkgit:git-show-ref[1].
 
-The 'git bundle' command packages objects and references in an archive
-at the originating machine, which can then be imported into another
-repository using 'git fetch', 'git pull', or 'git clone',
-after moving the archive by some means (e.g., by sneakernet).
+Like the the packed archive format itself bundles can either be
+self-contained or thin (see "--thin" in linkgit:git-pack-objects[1]).
+
+Bundles are useful for numerous purposes. They were originally
+designed to facilitate the transfer of repository data between
+repositories which could not be directly connect to each other, and
+therefore the interactive Git protocols (git, ssh, http) could not be
+used.
+
+In that scenario a bundle is produced on the originating machine. It
+is then transferred to the other machine (e.g. by sneakernet), and
+unpacked on the other end. The unpacking can happen either with
+linkgit:git-clone[1] (which knows how to clone from bundle files), or
+by "git bundle unbundle".
 
 As no
 direct connection between the repositories exists, the user must specify a
@@ -34,6 +44,9 @@ basis for the bundle that is held by the destination repository: the
 bundle assumes that all objects in the basis are already in the
 destination repository.
 
+Similarly, bundles are commonly used to produce incremental backups of
+git repositories. See the "EXAMPLES" section below.
+
 OPTIONS
 -------
 
-- 
2.32.0.rc3.434.gd8aed1f08a7
Next: Ævar Arnfjörð Bjarmason
Message 1 of 41 in “bundle doc: rewrite the "DESCRIPTION" section”
  1. bundle doc: rewrite the "DESCRIPTION" sectionÆvar Arnfjörð Bjarmason, Jun 7, 2021
  2. bundle doc: rewrite the "DESCRIPTION" sectionÆvar Arnfjörð Bjarmason, Jun 7, 2021
  3. Junio C HamanoJun 7, 2021
  4. 0/3 bundle doc: generaliz & elaborateÆvar Arnfjörð Bjarmason, Jun 24, 2021
  5. 1/3 bundle doc: rewrite the "DESCRIPTION" sectionÆvar Arnfjörð Bjarmason, Jun 24, 2021
  6. Junio C HamanoJun 29, 2021
  7. 2/3 bundle doc: split out thin v.s. not discussion from <rev-arg>Ævar Arnfjörð Bjarmason, Jun 24, 2021
  8. Junio C HamanoJun 29, 2021
  9. 3/3 bundle doc: elaborate on rev<->ref restrictionÆvar Arnfjörð Bjarmason, Jun 24, 2021
  10. 0/3 bundle doc: generalize & elaborateÆvar Arnfjörð Bjarmason, Jun 30, 2021
  11. 2/3 bundle doc: split out open v.s. closed discussion from <rev-arg>Ævar Arnfjörð Bjarmason, Jun 30, 2021
  12. Junio C HamanoJun 30, 2021
  13. 1/3 bundle doc: rewrite the "DESCRIPTION" sectionÆvar Arnfjörð Bjarmason, Jun 30, 2021
  14. 3/3 bundle doc: elaborate on rev<->ref restrictionÆvar Arnfjörð Bjarmason, Jun 30, 2021
  15. 0/3 bundle doc: generalize & elaborateÆvar Arnfjörð Bjarmason, Jul 2, 2021
  16. 1/3 bundle doc: rewrite the "DESCRIPTION" sectionÆvar Arnfjörð Bjarmason, Jul 2, 2021
  17. 2/3 bundle doc: elaborate on object prerequisitesÆvar Arnfjörð Bjarmason, Jul 2, 2021
  18. Junio C HamanoJul 2, 2021
  19. 3/3 bundle doc: elaborate on rev<->ref restrictionÆvar Arnfjörð Bjarmason, Jul 2, 2021
  20. 0/3 bundle doc: generalize & elaborateÆvar Arnfjörð Bjarmason, Jul 20, 2021
  21. 2/3 bundle doc: elaborate on object prerequisitesÆvar Arnfjörð Bjarmason, Jul 20, 2021
  22. Junio C HamanoJul 20, 2021
  23. 3/3 bundle doc: elaborate on rev<->ref restrictionÆvar Arnfjörð Bjarmason, Jul 20, 2021
  24. Junio C HamanoJul 20, 2021
  25. Philip OakleyJul 21, 2021
  26. Junio C HamanoJul 21, 2021
  27. Philip OakleyJul 22, 2021
  28. Ævar Arnfjörð BjarmasonJul 22, 2021
  29. Philip OakleyJul 22, 2021
  30. 1/3 bundle doc: rewrite the "DESCRIPTION" sectionÆvar Arnfjörð Bjarmason, Jul 20, 2021
  31. 0/3 bundle doc: generalize & elaborateÆvar Arnfjörð Bjarmason, Jul 27, 2021
  32. 1/3 bundle doc: rewrite the "DESCRIPTION" sectionÆvar Arnfjörð Bjarmason, Jul 27, 2021
  33. 2/3 bundle doc: elaborate on object prerequisitesÆvar Arnfjörð Bjarmason, Jul 27, 2021
  34. 3/3 bundle doc: elaborate on rev<->ref restrictionÆvar Arnfjörð Bjarmason, Jul 27, 2021
  35. Philip OakleyJul 28, 2021
  36. Junio C HamanoJul 28, 2021
  37. 0/3 bundle doc: generalize & elaborateÆvar Arnfjörð Bjarmason, Jul 31, 2021
  38. 1/4 bundle doc: rewrite the "DESCRIPTION" sectionÆvar Arnfjörð Bjarmason, Jul 31, 2021
  39. 2/4 bundle doc: elaborate on object prerequisitesÆvar Arnfjörð Bjarmason, Jul 31, 2021
  40. 3/4 bundle doc: elaborate on rev<->ref restrictionÆvar Arnfjörð Bjarmason, Jul 31, 2021
  41. 4/4 bundle doc: replace "basis" with "prerequsite(s)"Ævar Arnfjörð Bjarmason, Jul 31, 2021

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.