[PATCH 1/4] Documentation: explain push.default option a bit more
- From
Matthieu Moy <matthieu.moy@imag.fr>
- Date
- Apr 20, 2012, 14:59 UTC
- Message-ID
- <1334933944-13446-2-git-send-email-Matthieu.Moy@imag.fr>
- In-Reply-To
- <1334933944-13446-1-git-send-email-Matthieu.Moy@imag.fr>
The previous documentation was explaining _what_ the options were doing, but were of little help explaining _why_ a user should set his default to either of the options.
Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> --- Documentation/config.txt | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/Documentation/config.txt b/Documentation/config.txt index fb386ab..368a770 100644 --- a/Documentation/config.txt +++ b/Documentation/config.txt @@ -1682,10 +1682,21 @@ push.default:: * `nothing` - do not push anything. * `matching` - push all matching branches. All branches having the same name in both ends are considered to be - matching. This is the default. -* `upstream` - push the current branch to its upstream branch. + matching. This is well suited when pushing to a non-shared + repository, but may give surprising results when used on a + repository shared by multiple users, since locally stalled + branches will attempt a non-fast forward push if other users + updated the branch remotely. This is the default. +* `upstream` - push the current branch to its upstream branch. See + "branch.<name>.merge" for how to configure the upstream branch. This + makes `git push` and `git pull` symmetrical in the sense that `push` + will update the same remote ref as the one which is merged by + `git pull`. * `tracking` - deprecated synonym for `upstream`. * `current` - push the current branch to a branch of the same name. + This option allows publishing a branch to a remote repository using + the same naming convention locally and remotely, in a more + conservative and safer way than `matching`. rebase.stat:: Whether to show a diffstat of what changed upstream since the last
-- 1.7.10.140.g8c333