aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/git-bundle.txt
diff options
context:
space:
mode:
authorPhilip Oakley <philipoakley@iee.email>2019-10-20 12:03:06 +0100
committerJunio C Hamano <gitster@pobox.com>2019-10-21 12:02:39 +0900
commit0e40a73a4c768c220dabf14f173f33c87a4f4829 (patch)
treeacce2020fe5a5a505d1ef2df19fdabfb462d0e00 /Documentation/git-bundle.txt
parent5fa0f5238b0cd46cfe7f6fa76c3f526ea98148d9 (diff)
downloadgit-0e40a73a4c768c220dabf14f173f33c87a4f4829.tar.gz
Doc: Bundle file usage
Improve the command description, including paragraph spacing. Git URLs can accept bundle files for fetch, pull and clone, include in that section. Include git clone in the bundle usage description. Correct the quoting of <git-rev-list-args>. Detail the <git-rev-list-args> options for cloning a complete repo. Signed-off-by: Philip Oakley <philipoakley@iee.email> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'Documentation/git-bundle.txt')
-rw-r--r--Documentation/git-bundle.txt23
1 files changed, 17 insertions, 6 deletions
diff --git a/Documentation/git-bundle.txt b/Documentation/git-bundle.txt
index 7d6c9dcd17..545940022b 100644
--- a/Documentation/git-bundle.txt
+++ b/Documentation/git-bundle.txt
@@ -20,11 +20,14 @@ 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. This command provides support for
-'git fetch' and 'git pull' to operate by packaging objects and references
-in an archive at the originating machine, then importing those into
-another repository using 'git fetch' and 'git pull'
-after moving the archive by some means (e.g., by sneakernet). As no
+ssh, http) cannot be used.
+
+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).
+
+As no
direct connection between the repositories exists, the user must specify a
basis for the bundle that is held by the destination repository: the
bundle assumes that all objects in the basis are already in the
@@ -35,7 +38,7 @@ OPTIONS
create <file>::
Used to create a bundle named 'file'. This requires the
- 'git-rev-list-args' arguments to define the bundle contents.
+ '<git-rev-list-args>' arguments to define the bundle contents.
verify <file>::
Used to check that a bundle file is valid and will apply
@@ -92,6 +95,14 @@ It is okay to err on the side of caution, causing the bundle file
to contain objects already in the destination, as these are ignored
when unpacking at the destination.
+`git clone` can use any bundle created without negative refspecs
+(e.g., `new`, but not `old..new`).
+If you want to match `git clone --mirror`, which would include your
+refs such as `refs/remotes/*`, use `--all`.
+If you want to provide the same set of refs that a clone directly
+from the source repository would get, use `--branches --tags` for
+the `<git-rev-list-args>`.
+
EXAMPLES
--------