1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-08-22 18:41:00 +02:00
Commit graph

125 commits

Author SHA1 Message Date
Daniel Shahaf
40d9681b62 43313 (log message tweaked): vcs_info git: For the branch name, try to find a symbolic name before falling back to a raw commit hash.
Ask git-describe(1) and git-name-rev(1) to compute a gitrevisions(7)
name in terms of a branch or tag that contains (= is a descendant of,
is younger than) HEAD.

In this repository, the output changes from "9567bfe..." to
"master~1" or "remotes/origin/HEAD~1". This would also happen
during bisects, e.g., "bisect/bad~22".
2018-08-24 15:50:18 +00:00
Daniel Shahaf
4cfbbf9ca5 43314: vcs_info git: Flatten a nested if.
No functional change.
2018-08-24 15:49:38 +00:00
dana
faa07d064b 43030: Replace VCS_INFO_realpath() by :P 2018-06-16 12:03:23 -05:00
Daniel Shahaf
a8ad9768bd unposted: vcs_info: Add docstrings to the internal functions VCS_INFO_formats and VCS_INFO_set. 2017-12-30 06:14:22 +00:00
Alexey Sokolov
1a5d8a6916 41952: Use HGPLAIN instead of HGRCPATH in VCS_INFO_get_data_hg
Fixes prompt indicator in case if the repository requires a non-default
feature. With HGRCPATH, it results in:

abort: repository requires features unknown to this Mercurial: ...
(see https://mercurial-scm.org/wiki/MissingRequirement for more information)

Which, in turn, results in "default" getting reported regardless of what
is the current state of the repo.
2017-10-25 10:34:34 +02:00
Daniel Shahaf
d6aa949977 41565: vcs_info patch2subject: Support svn log -r N --diff output. 2017-08-22 20:50:14 +00:00
Barton E. Schaefer
1b0541c52f Julien Nicoulaud: 40586: discard stderr 2017-02-21 20:45:18 -08:00
Daniel Shahaf
ecd88284f3 40492: vcs_info: Escape '%' signs in payloads.
Test case: a patch whose subject is '%Sfoo%sbar'.  ('S' and 's' are
expandos both in prompts and in the 'formats' style.)
2017-02-09 15:24:04 +00:00
Daniel Shahaf
bb6c08b51a unposted: vcs_info git: Fix typo in manual. 2017-02-04 05:55:46 +00:00
Daniel Shahaf
33c0a10448 40480: vcs_info set-patch-format: Eliminate the remaining code duplication. 2017-02-03 18:14:01 +00:00
Daniel Shahaf
9211d7f277 40479: vcs_info set-patch-format: Prepare for more code sharing between the callers.
This changes hook invocation order in the hg backend.
2017-02-03 18:14:00 +00:00
Daniel Shahaf
fca4f90bba 40481: vcs_info hg: Pass arguments to the set-patch-format hook. 2017-02-03 18:13:59 +00:00
Daniel Shahaf
3a1756b728 40478: vcs_info set-patch-format: Guard against empty variable elision. 2017-02-03 18:13:58 +00:00
Daniel Shahaf
49bc46946e 40476: vcs_info $backend_misc: Document at the right point, provide in quilt 'standalone' mode. 2017-02-03 18:13:57 +00:00
Daniel Shahaf
2854a67e09 40403/0004: vcs_info set-patch-format helper: Part .
This also fixes the %a (${hook_com[all-n]}) expando in the hg backend:
before this change, it counted only unapplied changes.
2017-01-25 04:22:32 +00:00
Daniel Shahaf
edd9798de7 40403/0003: vcs_info set-patch-format helper: Part . 2017-01-25 04:22:32 +00:00
Daniel Shahaf
2702857334 40403/0002: vcs_info set-patch-format helper: Part .
Not all callers reset ${hook_com}, but those that don't, immediately
overwrite it a few lines later.
2017-01-25 04:22:31 +00:00
Daniel Shahaf
0ea1957608 40403/0001: vcs_info set-patch-format helper: Part . 2017-01-25 04:22:30 +00:00
Daniel Shahaf
57013f8b96 40401: vcs_info git: Fix the %c patch-format expando.
Before this change, ${git_unapplied_s} was unused and the %c
(${hook_com[unapplied]}) expando evaluated to the number of digits in
the string returned by the gen-unapplied-string hook (or to the number
of digits in the number of unapplied patches, when there was no such
hook).
2017-01-25 04:22:30 +00:00
Daniel Shahaf
699a38e698 40392: vcs_info patch2subject: Support git show output. 2017-01-25 04:22:28 +00:00
Daniel Shahaf
816084c0ac 40149: vcs_info git: Avoid a fork. 2016-12-16 10:48:10 +00:00
Daniel Shahaf
f71de84f1d unposted: vcs_info git: Handle rebase-apply sequences with >=10000 patches.
Review-by: Frank Terbeck
2016-12-04 21:37:02 +00:00
Daniel Shahaf
d9237ccdbf 40074: vcs_info git: rfc822-unfold rebase-apply patch subjects when msg-clean is unavailable.
Example (in this repository):

    git -c merge.merge-changelog.driver=/bin/false rebase --onto=1955cce^^  1955cce^ 1955cce
2016-12-04 21:37:01 +00:00
Daniel Hahler
ccf50048ac Get subject of current patch in rebase-apply mode 2016-12-03 00:18:22 +01:00
Daniel Shahaf
8891f5a33d unposted: vcs_info: Break out VCS_INFO_quilt-patch2subject into VCS_INFO_patch2subject
... so other places can use it; compare 40030 in the 39990 thread.
2016-12-01 17:13:37 +00:00
Daniel Shahaf
74aa45910b 39786: vcs_info (hg): Use native hexdump implementation instead of external command.
Fixes issue whereby the external command would print "*" for repeated
octets.

Includes comment change, cf 39790.
2016-10-31 18:35:47 +00:00
Daniel Shahaf
889f6690fd 39423: vcs_info git: Produce nicer applied-string messages for 'exec' actions.
This changes the behaviour on "unknown" git-rebase actions (those other
than pick/reword/edit/fixup/squash/execute).
2016-09-24 07:22:15 +00:00
Daniel Shahaf
7154052ebe 39046 + 39061: New :P history modifier. 2016-08-22 03:34:30 +00:00
Daniel Shahaf
7a5ecf4909 38610: vcs_info quilt: Extract a patch subject, 2.0. 2016-06-06 08:10:12 +00:00
Daniel Shahaf
e8943e7007 38609: vcs_info quilt: Factor out a helper function. No functional change. 2016-06-06 08:10:11 +00:00
Daniel Shahaf
a45a9fa104 unposted: Fix typo in comment. 2016-01-15 06:30:06 +00:00
Daniel Shahaf
ce1148db45 37612: vcs_info git: Set $git_patches_unapplied correctly for 'rebase-apply' case.
This manifested, e.g., in 'git am' of a single patch that had a conflict.
2016-01-15 06:29:09 +00:00
Frank Terbeck
dab6e7c231 37451: vcs_info: Declare "msgs" in early context
The parameter *is* being declared with the redefinition of the
function, but not in its initial form, which gets you a warning
about the parameter being defined globally. This fixes it.
2015-12-30 15:23:08 +01:00
Philip Sequeira
038b1d4b38 37345: VCS_INFO functions break with setopt no_unset
With setopt no_unset in my config file, vcs_info fails with:
VCS_INFO_maxexports:7: vcs: parameter not set
2015-12-23 01:57:45 +01:00
Peter Stephenson
4105f79a3a 37347: Remove incorrect local for msgs in VCS info 2015-12-08 12:59:48 +00:00
Daniel Shahaf
502d55c014 37252: vcs_info git: Compute %b correctly with "rebase --onto" of detached heads. (Follow-up to 36725.) 2015-11-30 03:42:47 +00:00
Peter Stephenson
ae4cf7b743 37186: a couple more WARN_CREATE_GLOBAL fixes 2015-11-22 16:06:20 +00:00
Daniel Shahaf
f59864ce7a 37025: vcs_info git: Add a cherry-pick patch-format 2015-11-13 20:17:27 +00:00
Daniel Shahaf
779b3112f8 36913 + 36945: vcs_info quilt: Pass patch subject lines to gen-applied-string
The format used is '${patchname} ${subject}', which is analogous to the git backend.
2015-10-24 20:42:26 +00:00
Daniel Shahaf
c62db9e7dc 36912: vcs_info quilt: Tolerate being in child of .pc's parent
Without this, gen-applied-string would only be set when .pc is a child of cwd,
not when it is a child of an ancestor of cwd.
2015-10-24 20:26:41 +00:00
Frank Terbeck
2e600b432a 36888: vcs_info: Prevent warn_create_global warning with '-preinit-' state
This is related to 33405. Turns out that not all other calls to
VCS_INFO_set are okay: With recent zsh versions the early call to that
function with the '-preinit-' argument causes a warning like this:

  VCS_INFO_set:9: math parameter maxexports created globally
                  in function VCS_INFO_set

This fixes it.
2015-10-18 20:40:18 +02:00
Frank Terbeck
e245dd7193 36832: vcs_info: Remove dependency on "seq"
The "seq" utility is usually available on GNU systems only. This
exchanges calls to seq with pure zsh features. Also: Less forks are
good.
2015-10-11 12:54:30 +02:00
Frank Terbeck
7a1678767f 36830: vcs_info: Silence an error message with new git versions
Mikael informs me on IRC, that in new versions of git (he used 2.6.1)
where the "am" subcommand is now a builtin, a file that is used by the
git backend of vcs_info (namely .git/rebase-apply/msg-clean) is not
available anymore, leading to an annoying error message:

  VCS_INFO_get_data_git:232: no such file or directory: .git/rebase-apply/msg-clean

This patch checks for the availabiliy of the file before using it,
and adjusts the value of the dependant values accordingly.
2015-10-11 12:29:41 +02:00
Daniel Shahaf
a90cf551ef 36725: vcs_info git: Compute %b correctly when "git am"-ing onto detached heads.
Before this patch, $gitbranch would be set to empty, which caused
VCS_INFO_get_data_git to early out with a failure status¹, consequently
$vcs_info_msg_0_ would be empty.

¹ via the 'if [[ -z ]]' block around line 170.
2015-09-30 21:43:37 +00:00
Daniel Shahaf
cd1cda9d57 36725: vcs_info git: Compute %b correctly when rebasing detached heads.
This sets the %b expando to the hash of the before-the-merge HEAD, rather
than to the literal string "detached HEAD".  That hash is already available
via the gen-applied-string hook.
2015-09-30 21:43:37 +00:00
Daniel Shahaf
7ac34a3055 36725: vcs_info git: Compute %b correctly when merging to detached heads.
The %b expando should be the hash prior to the merge.  The hash of the merge
result is available as the %i expando and via the gen-applied-string hook.
2015-09-30 21:43:37 +00:00
Daniel Hahler
45bdc87a1f 36601: vcs_info: handle missing .git/rebase-apply/{next,msg-clean}
When pressing Ctrl-C after `git am`, only `last` exists in
`.git/rebase-apply/`, which is empty.

This patch fixes it to fall back to "no patch applied" then.
2015-09-28 20:03:12 +02:00
Daniel Shahaf
880579dc1e 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
2015-09-05 10:47:44 +00:00
brian m. carlson
9a369d39e1 36209: vcs_info: avoid grep error message when file is missing
When running git rebase -m and a conflict occurs, the git-rebase-todo
file is not present.  This leads to an error from grep every time the
shell prompt is printed when vcs_info is enabled.  Avoid this message by
checking if the file exists before trying to grep it.
2015-08-18 01:00:25 +02:00
Mikael Magnusson
c5abf2bcff 36077: vcs_info: stop exporting everything 2015-08-12 04:31:22 +02:00