git/Documentation
Ramkumar Ramachandra ed2b18292b push: change simple to accommodate triangular workflows
When remote.pushdefault or branch.<name>.pushremote is set to a
remote that is different from where you usually fetch from (i.e. a
triangular workflow), master@{u} != origin, and push.default is set
to `upstream` or `simple` would fail with this error:

  $ git push
  fatal: You are pushing to remote 'origin', which is not the upstream of
  your current branch 'master', without telling me what to push
  to update which remote branch.

The very name of "upstream" indicates that it is only suitable for
use in central workflows; let us not even attempt to give it a new
meaning in triangular workflows, and error out as before.

However, the `simple` does not have to share this error.  It is
poised to be the default for Git 2.0, and we would like it to do
something sensible in triangular workflows.

Redefine "simple" as "safer upstream" for centralized workflow as
before, but work as "current" for triangular workflow.

We may want to make it "safer current", but that is a separate
issue.

Reported-by: Leandro Lucarella <leandro.lucarella@sociomantic.com>
Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-06-24 10:16:49 -07:00
..
howto The name of the hash function is "SHA-1", not "SHA1" 2013-04-15 11:08:37 -07:00
RelNotes Update draft release notes to 1.8.4 2013-06-15 22:12:52 -07:00
technical Merge branch 'jc/prune-all' 2013-05-29 14:23:04 -07:00
.gitattributes
.gitignore doc: generate a list of valid merge tools 2013-02-02 21:46:52 -08:00
asciidoc.conf Documentation: avoid poor-man's small caps GIT 2013-02-01 13:53:25 -08:00
blame-options.txt log -L: :pattern:file syntax to find by funcname 2013-03-28 10:30:04 -07:00
build-docdep.perl
cat-texi.perl Documentation: Strip texinfo anchors to avoid duplicates 2013-04-03 16:14:19 -07:00
cmd-list.perl
CodingGuidelines CodingGuidelines: Documentation/*.txt are the sources 2013-05-10 12:13:08 -07:00
config.txt push: change simple to accommodate triangular workflows 2013-06-24 10:16:49 -07:00
date-formats.txt
diff-config.txt Merge branch 'mp/diff-algo-config' 2013-02-17 15:25:52 -08:00
diff-format.txt
diff-generate-patch.txt docs: stop using asciidoc no-inline-literal 2012-04-26 13:19:06 -07:00
diff-options.txt Merge branch 'rr/diffcore-pickaxe-doc' 2013-06-11 13:31:04 -07:00
docbook-xsl.css
docbook.xsl
everyday.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
fetch-options.txt Merge branch 'rr/maint-fetch-tag-doc-asterisks' 2013-06-11 13:31:41 -07:00
fix-texi.perl
git-add.txt git add: --ignore-removal is a better named --no-all 2013-04-22 13:34:31 -07:00
git-am.txt documentation: trivial style cleanups 2013-05-17 12:09:21 -07:00
git-annotate.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-apply.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-archimport.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-archive.txt documentation: trivial style cleanups 2013-05-17 12:09:21 -07:00
git-bisect-lk2009.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-bisect.txt Merge branch 'mg/bisect-doc' 2013-02-14 10:29:01 -08:00
git-blame.txt log -L: :pattern:file syntax to find by funcname 2013-03-28 10:30:04 -07:00
git-branch.txt Merge branch 'nd/branch-error-cases' 2013-02-07 14:41:38 -08:00
git-bundle.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-cat-file.txt The name of the hash function is "SHA-1", not "SHA1" 2013-04-15 11:08:37 -07:00
git-check-attr.txt Documentation: add caveats about I/O buffering for check-{attr,ignore} 2013-04-11 11:11:36 -07:00
git-check-ignore.txt Documentation: add caveats about I/O buffering for check-{attr,ignore} 2013-04-11 11:11:36 -07:00
git-check-ref-format.txt Merge branch 'fc/at-head' 2013-06-11 13:31:23 -07:00
git-checkout-index.txt
git-checkout.txt Merge branch 'jh/checkout-auto-tracking' 2013-05-29 14:23:10 -07:00
git-cherry-pick.txt Merge branch 'cw/cherry-pick-allow-empty-message' 2012-09-03 15:53:37 -07:00
git-cherry.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-citool.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-clean.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-clone.txt documentation: trivial style cleanups 2013-05-17 12:09:21 -07:00
git-column.txt Documentation: spelling fixes 2012-06-19 11:35:19 -07:00
git-commit-tree.txt commit-tree: document -S option consistently 2013-03-25 15:01:22 -07:00
git-commit.txt documentation: trivial style cleanups 2013-05-17 12:09:21 -07:00
git-config.txt documentation: trivial style cleanups 2013-05-17 12:09:21 -07:00
git-count-objects.txt count-objects: add -H option to humanize sizes 2013-04-10 13:27:26 -07:00
git-credential-cache--daemon.txt command-list: mention git-credential-* helpers 2012-08-08 12:11:54 -07:00
git-credential-cache.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-credential-store.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-credential.txt doc: various spelling fixes 2013-04-12 12:00:52 -07:00
git-cvsexportcommit.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-cvsimport.txt Merge branch 'ta/doc-no-small-caps' 2013-02-05 16:13:32 -08:00
git-cvsserver.txt Merge branch 'ta/doc-no-small-caps' 2013-02-05 16:13:32 -08:00
git-daemon.txt documentation: trivial style cleanups 2013-05-17 12:09:21 -07:00
git-describe.txt describe: Add --first-parent option 2013-05-20 11:09:03 -07:00
git-diff-files.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-diff-index.txt Documentation/diff-index: mention two modes of operation 2013-05-20 15:50:44 -07:00
git-diff-tree.txt docs: fix some antique example output 2011-05-26 22:15:39 -07:00
git-diff.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-difftool.txt documentation: trivial style cleanups 2013-05-17 12:09:21 -07:00
git-fast-export.txt documentation: trivial style cleanups 2013-05-17 12:09:21 -07:00
git-fast-import.txt Merge branch 'jk/maint-fast-import-doc-reorder' into maint 2013-01-14 07:59:46 -08:00
git-fetch-pack.txt documentation: trivial style cleanups 2013-05-17 12:09:21 -07:00
git-fetch.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-filter-branch.txt Merge branch 'maint-1.8.1' into maint 2013-03-25 13:46:42 -07:00
git-fmt-merge-msg.txt documentation: trivial style cleanups 2013-05-17 12:09:21 -07:00
git-for-each-ref.txt git-for-each-ref.txt: 'raw' is a supported date format 2013-01-21 16:26:26 -08:00
git-format-patch.txt format-patch: add format.coverLetter configuration variable 2013-04-07 13:37:47 -07:00
git-fsck-objects.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-fsck.txt documentation: trivial style cleanups 2013-05-17 12:09:21 -07:00
git-gc.txt git-gc.txt, git-reflog.txt: document new expiry options 2013-04-18 09:30:15 -07:00
git-get-tar-commit-id.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-grep.txt documentation: trivial style cleanups 2013-05-17 12:09:21 -07:00
git-gui.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-hash-object.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-help.txt doc: include --guide option description for "git help" 2013-04-03 07:43:29 -07:00
git-http-backend.txt doc/http-backend: match query-string in apache half-auth example 2013-04-13 22:27:06 -07:00
git-http-fetch.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-http-push.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-imap-send.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-index-pack.txt clone: open a shortcut for connectivity check 2013-05-28 08:07:20 -07:00
git-init-db.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-init.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-instaweb.txt Documentation: Link to gitweb(1) and gitweb.conf(5) in other manpages 2011-10-16 11:09:35 -07:00
git-log.txt Merge branch 'tr/line-log' 2013-06-02 16:00:44 -07:00
git-lost-found.txt Documentation: do not mention .git/refs/* directories 2012-08-06 14:04:16 -07:00
git-ls-files.txt The name of the hash function is "SHA-1", not "SHA1" 2013-04-15 11:08:37 -07:00
git-ls-remote.txt ls-remote: document the '--get-url' option 2012-09-07 10:58:35 -07:00
git-ls-tree.txt
git-mailinfo.txt documentation: trivial style cleanups 2013-05-17 12:09:21 -07:00
git-mailsplit.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-merge-base.txt merge-base: "--is-ancestor A B" 2012-08-31 11:45:33 -07:00
git-merge-file.txt docs: put listed example commands in backticks 2011-08-04 15:49:13 -07:00
git-merge-index.txt The name of the hash function is "SHA-1", not "SHA1" 2013-04-15 11:08:37 -07:00
git-merge-one-file.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-merge-tree.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-merge.txt documentation: trivial style cleanups 2013-05-17 12:09:21 -07:00
git-mergetool--lib.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-mergetool.txt documentation: trivial style cleanups 2013-05-17 12:09:21 -07:00
git-mktag.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-mktree.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-mv.txt Documentation: avoid poor-man's small caps GIT 2013-02-01 13:53:25 -08:00
git-name-rev.txt
git-notes.txt Doc notes: Include the format-patch --notes option 2012-10-25 06:15:56 -04:00
git-p4.txt Merge branch 'ta/doc-no-small-caps' 2013-02-05 16:13:32 -08:00
git-pack-objects.txt The name of the hash function is "SHA-1", not "SHA1" 2013-04-15 11:08:37 -07:00
git-pack-redundant.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-pack-refs.txt Merge branch 'jc/tag-doc' into maint-1.7.11 2012-08-24 12:05:30 -07:00
git-parse-remote.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-patch-id.txt The name of the hash function is "SHA-1", not "SHA1" 2013-04-15 11:08:37 -07:00
git-peek-remote.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-prune-packed.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-prune.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-pull.txt Merge branch 'maint-1.8.1' into maint 2013-03-27 10:51:10 -07:00
git-push.txt Merge branch 'tr/push-no-verify-doc' 2013-06-05 14:56:48 -07:00
git-quiltimport.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-read-tree.txt Merge branch 'jh/fetch-head-update' 2012-01-06 12:44:01 -08:00
git-rebase.txt rebase: implement --[no-]autostash and rebase.autostash 2013-05-29 10:34:54 -07:00
git-receive-pack.txt Sync with 1.7.6.2 2011-09-06 11:42:12 -07:00
git-reflog.txt Merge branch 'jc/prune-all' 2013-05-29 14:23:04 -07:00
git-relink.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-remote-ext.txt doc: various spelling fixes 2013-04-12 12:00:52 -07:00
git-remote-fd.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-remote-helpers.txto Rename {git- => git}remote-helpers.txt 2013-02-01 14:12:34 -08:00
git-remote-testgit.txt Merge branch 'jk/remote-helpers-doc' 2013-02-07 14:41:45 -08:00
git-remote.txt documentation: trivial style cleanups 2013-05-17 12:09:21 -07:00
git-repack.txt fsck: --no-dangling omits "dangling object" information 2012-02-28 14:55:39 -08:00
git-replace.txt The name of the hash function is "SHA-1", not "SHA1" 2013-04-15 11:08:37 -07:00
git-repo-config.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-request-pull.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-rerere.txt docs: stop using asciidoc no-inline-literal 2012-04-26 13:19:06 -07:00
git-reset.txt reset: update documentation to require only tree-ish with paths 2013-01-16 12:50:23 -08:00
git-rev-list.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-rev-parse.txt Merge branch 'ta/glossary' 2013-04-21 18:40:15 -07:00
git-revert.txt documentation: trivial style cleanups 2013-05-17 12:09:21 -07:00
git-rm.txt Merge branch 'jl/submodule-deinit' 2013-03-25 14:00:29 -07:00
git-send-email.txt send-email: make annotate configurable 2013-04-07 00:42:29 -07:00
git-send-pack.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-sh-i18n--envsubst.txt correct a few doubled-word nits in comments and documentation 2012-03-28 11:18:35 -07:00
git-sh-i18n.txt Merge branch 'jn/doc-dashdash' into maint 2011-09-11 21:52:18 -07:00
git-sh-setup.txt mergetools/p4merge: create a base if none available 2013-03-13 10:46:07 -07:00
git-shell.txt shell: new no-interactive-login command to print a custom message 2013-03-09 23:21:35 -08:00
git-shortlog.txt git-shortlog.txt: make SYNOPSIS match log, update OPTIONS 2013-04-21 23:11:02 -07:00
git-show-branch.txt The name of the hash function is "SHA-1", not "SHA1" 2013-04-15 11:08:37 -07:00
git-show-index.txt The name of the hash function is "SHA-1", not "SHA1" 2013-04-15 11:08:37 -07:00
git-show-ref.txt The name of the hash function is "SHA-1", not "SHA1" 2013-04-15 11:08:37 -07:00
git-show.txt docs: stop using asciidoc no-inline-literal 2012-04-26 13:19:06 -07:00
git-stage.txt
git-stash.txt Documentation/git-stash.txt: add a missing verb 2012-12-10 08:18:25 -08:00
git-status.txt Merge branch 'tb/document-status-u-tradeoff' into maint 2013-04-01 09:19:30 -07:00
git-stripspace.txt Merge branch 'ta/doc-no-small-caps' 2013-02-05 16:13:32 -08:00
git-submodule.txt git-submodule.txt: Clarify 'init' and 'add' subcommands. 2013-05-16 12:01:31 -07:00
git-svn.txt git-svn: introduce --parents parameter for commands branch and tag 2013-05-20 22:05:54 +00:00
git-symbolic-ref.txt git symbolic-ref --delete $symref 2012-10-21 12:17:38 -07:00
git-tag.txt The name of the hash function is "SHA-1", not "SHA1" 2013-04-15 11:08:37 -07:00
git-tar-tree.txt docs: stop using asciidoc no-inline-literal 2012-04-26 13:19:06 -07:00
git-tools.txt doc: various spelling fixes 2013-04-12 12:00:52 -07:00
git-unpack-file.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-unpack-objects.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-update-index.txt documentation: trivial style cleanups 2013-05-17 12:09:21 -07:00
git-update-ref.txt Documentation: avoid poor-man's small caps GIT 2013-02-01 13:53:25 -08:00
git-update-server-info.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git-upload-archive.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-upload-pack.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-var.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-verify-pack.txt The name of the hash function is "SHA-1", not "SHA1" 2013-04-15 11:08:37 -07:00
git-verify-tag.txt The name of the hash function is "SHA-1", not "SHA1" 2013-04-15 11:08:37 -07:00
git-web--browse.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-whatchanged.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-write-tree.txt Documentation: use [verse] for SYNOPSIS sections 2011-07-06 14:26:26 -07:00
git.txt Merge branch 'cr/git-work-tree-sans-git-dir' 2013-06-11 13:31:01 -07:00
gitattributes.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
gitcli.txt Merge branch 'gp/avoid-explicit-mention-of-dot-git-refs' into maint 2013-03-26 12:40:04 -07:00
gitcore-tutorial.txt The name of the hash function is "SHA-1", not "SHA1" 2013-04-15 11:08:37 -07:00
gitcredentials.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
gitcvs-migration.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
gitdiffcore.txt diffcore-pickaxe doc: document -S and -G properly 2013-06-03 10:53:11 -07:00
gitglossary.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
githooks.txt The name of the hash function is "SHA-1", not "SHA1" 2013-04-15 11:08:37 -07:00
gitignore.txt Merge branch 'ta/doc-no-small-caps' 2013-02-05 16:13:32 -08:00
gitk.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
gitmodules.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
gitnamespaces.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
gitremote-helpers.txt Merge branch 'fc/transport-helper-error-reporting' 2013-05-29 14:20:16 -07:00
gitrepository-layout.txt Document .git/modules 2013-06-09 13:45:32 -07:00
gitrevisions.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
gittutorial-2.txt The name of the hash function is "SHA-1", not "SHA1" 2013-04-15 11:08:37 -07:00
gittutorial.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
gitweb.conf.txt gitweb/INSTALL: GITWEB_CONFIG_SYSTEM is for backward compatibility 2013-04-17 15:18:12 -07:00
gitweb.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
gitworkflows.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
glossary-content.txt Merge branch 'jh/checkout-auto-tracking' 2013-05-29 14:23:10 -07:00
howto-index.sh Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
i18n.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
install-doc-quick.sh docs: Update install-doc-quick 2011-11-08 13:37:10 -08:00
install-webdoc.sh
line-range-format.txt log -L: :pattern:file syntax to find by funcname 2013-03-28 10:30:04 -07:00
mailmap.txt Merge branch 'jk/mailmap-from-blob' 2013-01-05 23:41:42 -08:00
Makefile Merge branch 'da/mergetool-docs' 2013-02-07 14:42:16 -08:00
manpage-1.72.xsl
manpage-base-url.xsl.in
manpage-base.xsl
manpage-bold-literal.xsl
manpage-normal.xsl
manpage-quote-apos.xsl
manpage-suppress-sp.xsl
merge-config.txt Merge branch 'da/mergetool-docs' 2013-02-07 14:42:16 -08:00
merge-options.txt Merge branch 'rh/merge-options-doc-fix' 2013-06-02 15:48:22 -07:00
merge-strategies.txt git-merge(1): document diff-algorithm option to merge-recursive 2013-04-05 10:57:23 -07:00
pretty-formats.txt Merge branch 'nd/pretty-formats' 2013-04-23 11:22:48 -07:00
pretty-options.txt Documentation: Document signature showing options 2012-09-20 10:28:51 -07:00
pull-fetch-param.txt fetch: opportunistically update tracking refs 2013-05-12 15:23:48 -07:00
rev-list-options.txt simplify-merges: drop merge from irrelevant side branch 2013-05-16 11:51:09 -07:00
revisions.txt Add new @ shortcut for HEAD 2013-05-08 12:13:12 -07:00
sequencer.txt revert: introduce --abort to cancel a failed cherry-pick 2011-11-22 18:16:59 -08:00
SubmittingPatches Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
urls-remotes.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
urls.txt Merge branch 'nd/urls-doc-no-file-hyperlink-fix' 2013-06-05 14:56:51 -07:00
user-manual.conf docs: monospace listings in docbook output 2012-08-07 14:30:52 -07:00
user-manual.txt Merge branch 'da/downcase-u-in-usage' into maint 2013-04-01 09:19:04 -07:00