git-http-fetch - Man Page

Download from a remote Git repository via HTTP

Synopsis

git http-fetch [-c] [-t] [-a] [-d] [-v] [-w <filename>] [--recover] [--stdin | --packfile=<hash> | <commit>] <URL>

Description

Downloads a remote Git repository via HTTP​.

This command always gets all objects​. Historically, there were three options -a, -c and -t for choosing which objects to download​. They are now silently ignored​.

Options

commit-id

Either the hash or the filename under [URL]/refs/ to pull​.

-a, -c, -t

These options are ignored for historical reasons​.

-v

Report what is downloaded​.

-w <filename>

Writes the commit-id into the specified filename under $GIT_DIR/refs/<filename> on the local end after the transfer is complete​.

--stdin

Instead of a commit id on the command line (which is not expected in this case), git http-fetch expects lines on stdin in the format

<commit-id>['\t'<filename-as-in--w>]
--packfile=<hash>

For internal use only​. Instead of a commit id on the command line (which is not expected in this case), git http-fetch fetches the packfile directly at the given URL and uses index-pack to generate corresponding ​.idx and ​.keep files​. The hash is used to determine the name of the temporary file​. It need not be the pack hash, but it must uniquely identify the pack contents for resumption​. The output of index-pack is printed to stdout​. Requires one or more --index-pack-arg options​.

--index-pack-arg=<arg>

For internal use only​. The first instance specifies the command run on the contents of the downloaded pack​. Subsequent instances specify its arguments​.

--recover

Verify that everything reachable from target is fetched​. Used after an earlier fetch is interrupted​.

Git

Part of the git(1) suite

Info

09/28/2026 Git 2.56.0 Git Manual