Merge branch 'rr/triangle-push-fix' into pu

Tries to apply the 'push.default = upstream' semantics to
triangular workflow where it does not quite apply.

$gmane/227313

* rr/triangle-push-fix:
  SQUASH??? fix git-config push.default description
  SQUASH??? minimum "simple" safety fix-up
  t/t5528-push-default: test pushdefault workflows
  t/t5528-push-default: generalize test_push_*
  push: remove dead code in setup_push_upstream()
  push: change `simple` to accommodate triangular workflows
  config doc: rewrite push.default section
  t/t5528-push-default: remove redundant test_config lines

# Conflicts:
# 	Documentation/config.txt
Merge branch 'rj/read-default-config-in-show-ref-pack-refs' into pu

The changes themselves are probably good, but it is unclear what
basic setting needs to be read for which exact operation.

$gmane/228294

* rj/read-default-config-in-show-ref-pack-refs:
  ### DONTMERGE: needs better explanation on what config they need
  pack-refs.c: Add missing call to git_config()
  show-ref.c: Add missing call to git_config()