diff options
author | Junio C Hamano <gitster@pobox.com> | 2019-01-04 14:31:57 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2019-01-04 14:31:57 -0800 |
commit | de48f457367f37c28229ebe8e6cef849dd6e430a (patch) | |
tree | c0e656a1b610026344048379922f2fd2df8d549f /git-push.txt | |
parent | 2e1a9d9baa0719a5a67da9c049bffc04c23272bd (diff) | |
download | git-htmldocs-de48f457367f37c28229ebe8e6cef849dd6e430a.tar.gz |
Autogenerated HTML docs for v2.20.1-98-gecbdaf
Diffstat (limited to 'git-push.txt')
-rw-r--r-- | git-push.txt | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/git-push.txt b/git-push.txt index a5fc54aea..6a8a0d958 100644 --- a/git-push.txt +++ b/git-push.txt @@ -73,6 +73,26 @@ be omitted--such a push will update a ref that `<src>` normally updates without any `<refspec>` on the command line. Otherwise, missing `:<dst>` means to update the same ref as the `<src>`. + +If <dst> doesn't start with `refs/` (e.g. `refs/heads/master`) we will +try to infer where in `refs/*` on the destination <repository> it +belongs based on the the type of <src> being pushed and whether <dst> +is ambiguous. ++ +-- +* If <dst> unambiguously refers to a ref on the <repository> remote, + then push to that ref. + +* If <src> resolves to a ref starting with refs/heads/ or refs/tags/, + then prepend that to <dst>. + +* Other ambiguity resolutions might be added in the future, but for + now any other cases will error out with an error indicating what we + tried, and depending on the `advice.pushUnqualifiedRefname` + configuration (see linkgit:git-config[1]) suggest what refs/ + namespace you may have wanted to push to. + +-- ++ The object referenced by <src> is used to update the <dst> reference on the remote side. Whether this is allowed depends on where in `refs/*` the <dst> reference lives as described in detail below, in @@ -591,6 +611,9 @@ the ones in the examples below) can be configured as the default for `refs/remotes/satellite/master`) in the `mothership` repository; do the same for `dev` and `satellite/dev`. + +See the section describing `<refspec>...` above for a discussion of +the matching semantics. ++ This is to emulate `git fetch` run on the `mothership` using `git push` that is run in the opposite direction in order to integrate the work done on `satellite`, and is often necessary when you can |