NAME
----
-git-push - Update remote refs along with associated objects.
+git-push - Update remote refs along with associated objects
SYNOPSIS
--------
-'git-push' [--all] [--tags] [--force] <repository> <refspec>...
+'git-push' [--all] [--tags] [-f | --force] <repository> <refspec>...
DESCRIPTION
-----------
Updates remote refs using local refs, while sending objects
necessary to complete the given refs.
-You can make "interesting" things to happen on the repository
+You can make interesting things happen to a repository
every time you push into it, by setting up 'hooks' there. See
documentation for gitlink:git-receive-pack[1].
the optional plus `+` is used, the remote ref is updated
even if it does not result in a fast forward update.
+
+Note: If no explicit refspec is found, (that is neither
+on the command line nor in any Push line of the
+corresponding remotes file---see below), then all the
+refs that exist both on the local side and on the remote
+side are updated.
++
Some short-cut notations are also supported.
+
* `tag <tag>` means the same as `refs/tags/<tag>:refs/tags/<tag>`.
in the source.
\--all::
- Instead of naming each ref to push, specifies all refs
- to be pushed.
+ Instead of naming each ref to push, specifies that all
+ refs be pushed.
\--tags::
All refs under `$GIT_DIR/refs/tags` are pushed, in
-f, \--force::
Usually, the command refuses to update a remote ref that is
- not a descendent of the local ref used to overwrite it.
+ not a descendant of the local ref used to overwrite it.
This flag disables the check. This can cause the
remote repository to lose commits; use it with care.