1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-09-02 22:11:54 +02:00

36410: vcs_info git: Present merge heads as patches

This shows, during 'git merge', the revision hashes of the "remote" head
(the one that will become second parent of the commit) in the %m expando.

Review-by: Frank Terbeck
This commit is contained in:
Daniel Shahaf 2015-09-03 09:24:16 +00:00
parent 5445d5f0cc
commit 880579dc1e
3 changed files with 24 additions and 1 deletions

View file

@ -1,3 +1,9 @@
2015-09-05 Daniel Shahaf <d.s@daniel.shahaf.name>
* 36410: Doc/Zsh/contrib.yo
Functions/VCS_Info/Backends/VCS_INFO_get_data_git: vcs_info git:
Present merge heads as patches
2015-09-04 Peter Stephenson <p.stephenson@samsung.com>
* 36421: Src/pattern.c: can't-get-the-staff fix for idiocy in

View file

@ -1339,7 +1339,7 @@ tt(formats) and tt(actionformats) and will be available in the global
tt(backend_misc) array as tt(${backend_misc[bookmarks]}).
)
item(tt(gen-applied-string))(
Called in the tt(git) (with tt(stgit) or during rebase), and tt(hg)
Called in the tt(git) (with tt(stgit) or during rebase or merge), and tt(hg)
(with tt(mq)) backends and in tt(quilt) support when the tt(applied-string)
is generated; the tt(use-quilt) zstyle must be true for tt(quilt) (the tt(mq)
and tt(stgit) backends are active by default).

View file

@ -230,6 +230,23 @@ elif [[ -d "${gitdir}/rebase-apply" ]]; then
fi
git_patches_unapplied=($(seq $cur $(< "${patchdir}/last")))
VCS_INFO_git_handle_patches
elif [[ -f "${gitdir}/MERGE_HEAD" ]]; then
# This is 'git merge --no-commit'
local -a heads=( ${(@f)"$(<"${gitdir}/MERGE_HEAD")"} )
local subject;
IFS='' read -r subject < "${gitdir}/MERGE_MSG"
# $subject is the subject line of the would-be commit
# Maybe we can get the subject lines of MERGE_HEAD's commits cheaply?
local p
for p in $heads[@]; do
git_patches_applied+=("$p $subject")
done
unset p
# Not touching git_patches_unapplied
VCS_INFO_git_handle_patches
else
gitmisc=''