Merge branch 'jc/maint-log-first-parent-pathspec'

* jc/maint-log-first-parent-pathspec:
  Making pathspec limited log play nicer with --first-parent
Merge branch 'sp/smart-http-failure-to-push'

* sp/smart-http-failure-to-push:
  remote-curl: Fix push status report when all branches fail
Merge branch 'jk/parse-object-cached'

* jk/parse-object-cached:
  upload-pack: avoid parsing tag destinations
  upload-pack: avoid parsing objects during ref advertisement
  parse_object: try internal cache before reading object db
Merge branch 'rs/diff-postimage-in-context'

* rs/diff-postimage-in-context:
  xdiff: print post-image for common records instead of pre-image
Merge branch 'nd/index-pack-no-recurse'

* nd/index-pack-no-recurse:
  index-pack: eliminate unlimited recursion in get_base_data()
  index-pack: eliminate recursion in find_unresolved_deltas
  Eliminate recursion in setting/clearing marks in commit list
completion: --edit-description option for git-branch

Signed-off-by: Ralf Thielow <ralf.thielow@googlemail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Kick off the post 1.7.9 cycle

Signed-off-by: Junio C Hamano <gitster@pobox.com>
completion: --edit and --no-edit for git-merge

Signed-off-by: Adrian Weimann <adrian.weimann@googlemail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
merge: add instructions to the commit message when editing

Before f824628 (merge: use editor by default in interactive sessions,
2012-01-10), git-merge only started an editor if the user explicitly
asked for it with --edit.  Thus it seemed unlikely that the user would
need extra guidance.

After f824628 the _normal_ thing is to start an editor.  Give at least
an indication of why we are doing it.

The sentence about justification is one of the few things about
standard git that are not agnostic to the workflow that the user
chose.  However, f824628 was proposed by Linus specifically to
discourage users from merging unrelated upstream progress into topic
branches.  So we may as well take another step in the same direction.

Signed-off-by: Thomas Rast <trast@student.ethz.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
request-pull: explicitly ask tags/$name to be pulled

When asking for a tag to be pulled, disambiguate by leaving tags/ prefix
in front of the name of the tag. E.g.

    ... in the git repository at:

      git://example.com/git/git.git/ tags/v1.2.3

    for you to fetch changes up to 123456...

This way, older versions of "git pull" can be used to respond to such a
request more easily, as "git pull $URL v1.2.3" did not DWIM to fetch
v1.2.3 tag in older versions. Also this makes it clearer for humans that
the pull request is made for a tag and he should anticipate a signed one.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
Merge branch 'jc/advise-i18n'

* jc/advise-i18n:
  i18n of multi-line advice messages
Merge branch 'ld/git-p4-branches-and-labels'

* ld/git-p4-branches-and-labels:
  git-p4: label import fails with multiple labels at the same changelist
  git-p4: add test for p4 labels
  git-p4: importing labels should cope with missing owner
  git-p4: cope with labels with empty descriptions
  git-p4: handle p4 branches and labels containing shell chars
Merge branch 'rr/sequencer'

* rr/sequencer:
  sequencer: factor code out of revert builtin
  revert: prepare to move replay_action to header

Conflicts:
	builtin/revert.c
Merge branch 'ks/sort-wildcard-in-makefile'

* ks/sort-wildcard-in-makefile:
  t/Makefile: Use $(sort ...) explicitly where needed
Merge branch 'tr/grep-l-with-decoration'

* tr/grep-l-with-decoration:
  grep: fix -l/-L interaction with decoration lines
Merge branch 'jl/submodule-re-add'

* jl/submodule-re-add:
  submodule add: fix breakage when re-adding a deep submodule
Merge branch 'va/git-p4-branch'

* va/git-p4-branch:
  t9801: do not overuse test_must_fail
  git-p4: Change p4 command invocation
  git-p4: Add test case for complex branch import
  git-p4: Search for parent commit on branch creation
Merge branch 'da/maint-mergetool-twoway'

* da/maint-mergetool-twoway:
  mergetool: Provide an empty file when needed
Merge branch 'nd/clone-detached'

* nd/clone-detached:
  clone: fix up delay cloning conditions
  push: do not let configured foreign-vcs permanently clobbered
  clone: print advice on checking out detached HEAD
  clone: allow --branch to take a tag
  clone: refuse to clone if --branch points to bogus ref
  clone: --branch=<branch> always means refs/heads/<branch>
  clone: delay cloning until after remote HEAD checking
  clone: factor out remote ref writing
  clone: factor out HEAD update code
  clone: factor out checkout code
  clone: write detached HEAD in bare repositories
  t5601: add missing && cascade
Merge branch 'ar/i18n-no-gettext'

* ar/i18n-no-gettext:
  i18n: Do not force USE_GETTEXT_SCHEME=fallthrough on NO_GETTEXT
  i18n: Make NO_GETTEXT imply fallthrough scheme in shell l10n
  add a Makefile switch to avoid gettext translation in shell scripts
  git-sh-i18n: restructure the logic to compute gettext.sh scheme