GIT-FETCH-PACK(1)                                            Git Manual                                           GIT-FETCH-PACK(1)

NAME
       git-fetch-pack - Receive missing objects from another repository

SYNOPSIS
       git fetch-pack [--all] [--quiet|-q] [--keep|-k] [--thin] [--include-tag]
               [--upload-pack=<git-upload-pack>]
               [--depth=<n>] [--no-progress]
               [-v] <repository> [<refs>...]

DESCRIPTION
       Usually you would want to use git fetch, which is a higher level wrapper of this command, instead.

       Invokes git-upload-pack on a possibly remote repository and asks it to send objects missing from this repository, to update
       the named heads. The list of commits available locally is found out by scanning the local refs/ hierarchy and sent to
       git-upload-pack running on the other end.

       This command degenerates to download everything to complete the asked refs from the remote side when the local side does not
       have a common ancestor commit.

OPTIONS
       --all
           Fetch all remote refs.

       --stdin
           Take the list of refs from stdin, one per line. If there are refs specified on the command line in addition to this
           option, then the refs from stdin are processed after those on the command line.

           If --stateless-rpc is specified together with this option then the list of refs must be in packet format (pkt-line).
           Each ref must be in a separate packet, and the list must end with a flush packet.

       -q, --quiet
           Pass -q flag to git unpack-objects; this makes the cloning process less verbose.

       -k, --keep
           Do not invoke git unpack-objects on received data, but create a single packfile out of it instead, and store it in the
           object database. If provided twice then the pack is locked against repacking.

       --thin
           Fetch a "thin" pack, which records objects in deltified form based on objects not included in the pack to reduce network
           traffic.

       --include-tag
           If the remote side supports it, annotated tags objects will be downloaded on the same connection as the other objects if
           the object the tag references is downloaded. The caller must otherwise determine the tags this option made available.

       --upload-pack=<git-upload-pack>
           Use this to specify the path to git-upload-pack on the remote side, if is not found on your $PATH. Installations of sshd
           ignores the user’s environment setup scripts for login shells (e.g. .bash_profile) and your privately installed git may
           not be found on the system default $PATH. Another workaround suggested is to set up your $PATH in ".bashrc", but this
           flag is for people who do not want to pay the overhead for non-interactive shells by having a lean .bashrc file (they
           set most of the things up in .bash_profile).

       --exec=<git-upload-pack>
           Same as --upload-pack=<git-upload-pack>.

       --depth=<n>
           Limit fetching to ancestor-chains not longer than n.  git-upload-pack treats the special depth 2147483647 as infinite
           even if there is an ancestor-chain that long.

       --shallow-since=<date>
           Deepen or shorten the history of a shallow repository to include all reachable commits after <date>.

       --shallow-exclude=<revision>
           Deepen or shorten the history of a shallow repository to exclude commits reachable from a specified remote branch or
           tag. This option can be specified multiple times.

       --deepen-relative
           Argument --depth specifies the number of commits from the current shallow boundary instead of from the tip of each
           remote branch history.

       --refetch
           Skips negotiating commits with the server in order to fetch all matching objects. Use to reapply a new partial clone
           blob/tree filter.

       --no-progress
           Do not show the progress.

       --check-self-contained-and-connected
           Output "connectivity-ok" if the received pack is self-contained and connected.

       -v
           Run verbosely.

       <repository>
           The URL to the remote repository.

       <refs>...
           The remote heads to update from. This is relative to $GIT_DIR (e.g. "HEAD", "refs/heads/master"). When unspecified,
           update from all heads the remote side has.

           If the remote has enabled the options uploadpack.allowTipSHA1InWant, uploadpack.allowReachableSHA1InWant, or
           uploadpack.allowAnySHA1InWant, they may alternatively be 40-hex sha1s present on the remote.

SEE ALSO
       git-fetch(1)

GIT
       Part of the git(1) suite

Git 2.39.2                                                   04/24/2023                                           GIT-FETCH-PACK(1)