git-receive-pack - Receive what is pushed into the repository


'git receive-pack' [--reviewer <address> | --re <address>] [--cc <address>] <project>


Invoked by 'git push' and updates the project’s repository with the information fed from the 'git push' end.

End users can supply options to this command by passing them through to 'git push', which will relay them automatically.



The remote repository that will receive the pushed objects, and create (or update) changes. Within Gerrit Code Review this is the name of a project. The optional leading / and or trailing .git suffix will be removed, if supplied.

--reviewer <address>
--re <address>

Automatically add <address> as a reviewer to any change. Deprecated, use refs/for/branch%r=address instead.

--cc <address>

Carbon-copy <address> on the created or updated changes. Deprecated, use refs/for/branch%cc=address instead.


Any user who has configured an SSH key.


Send a review for a change on the master branch to

git push ssh:// HEAD:refs/for/

Send reviews, but tagging them with the topic name 'bug42':

git push ssh:// HEAD:refs/for/,topic=bug42

Also CC two other parties:

git push ssh:// HEAD:refs/for/,,

Configure a push macro to perform the last action:

git config remote.charlie.url ssh://
git config remote.charlie.push HEAD:refs/for/,,

afterwards .git/config contains the following:

[remote "charlie"]
  url = ssh://
  push = HEAD:refs/for/,,

and now sending a new change for review to charlie, CC’ing both alice and bob is much easier:

git push charlie