summaryrefslogtreecommitdiff
path: root/Documentation/git-push.txt
diff options
context:
space:
mode:
authorLibravatar Junio C Hamano <gitster@pobox.com>2012-12-07 14:11:21 -0800
committerLibravatar Junio C Hamano <gitster@pobox.com>2012-12-07 14:11:21 -0800
commitf07f4134ae44d7556509e246316482709d193f67 (patch)
tree8e36373784b74d9f8fca61b5a71315724e2829af /Documentation/git-push.txt
parentMerge branch 'jc/same-encoding' into maint (diff)
parentDocumentation/git-push.txt: clarify the "push from satellite" workflow (diff)
downloadtgif-f07f4134ae44d7556509e246316482709d193f67.tar.xz
Merge branch 'jc/doc-push-satellite' into maint
* jc/doc-push-satellite: Documentation/git-push.txt: clarify the "push from satellite" workflow
Diffstat (limited to 'Documentation/git-push.txt')
-rw-r--r--Documentation/git-push.txt16
1 files changed, 14 insertions, 2 deletions
diff --git a/Documentation/git-push.txt b/Documentation/git-push.txt
index 6d19d59ce5..8b637d339f 100644
--- a/Documentation/git-push.txt
+++ b/Documentation/git-push.txt
@@ -385,11 +385,23 @@ the ones in the examples below) can be configured as the default for
A handy way to push the current branch to the same name on the
remote.
-`git push origin master:satellite/master dev:satellite/dev`::
+`git push mothership master:satellite/master dev:satellite/dev`::
Use the source ref that matches `master` (e.g. `refs/heads/master`)
to update the ref that matches `satellite/master` (most probably
- `refs/remotes/satellite/master`) in the `origin` repository, then
+ `refs/remotes/satellite/master`) in the `mothership` repository;
do the same for `dev` and `satellite/dev`.
++
+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
+only make connection in one way (i.e. satellite can ssh into
+mothership but mothership cannot initiate connection to satellite
+because the latter is behind a firewall or does not run sshd).
++
+After running this `git push` on the `satellite` machine, you would
+ssh into the `mothership` and run `git merge` there to complete the
+emulation of `git pull` that were run on `mothership` to pull changes
+made on `satellite`.
`git push origin HEAD:master`::
Push the current branch to the remote ref matching `master` in the