brian m. carlson
bacad96523
github #48/0001: vcs_info git: avoid warnings in bare repositories
...
Git 2.25 introduced a change to how git rev-parse --show-toplevel
behaves. Traditionally, it succeeded with no output if the user was
in a bare repository. Now it dies, printing an error to standard error.
Consequently, when the user is in a bare repository with a newer Git,
vcs_info prints noisily to standard error.
While this is functionally harmless, it is annoying for the shell to
print messages from Git every time the prompt is printed, so let's
silence the error message.
2020-02-17 10:02:27 +00:00
Daniel Shahaf
86db36ab70
45114: vcs_info quilt: Improve support for svn-style patch headers.
...
Additional lines between the |-separated header line and the actual
log message, as generated by 'svn log -v' and 'svn log -g', are now
supported.
This change affects you if you have quilt patches with 'svn log'-style
information in their headers, regardless of whether you use quilt
standalone, quilt over svn, or quilt over some other VCS.
2019-12-22 03:21:03 +00:00
Daniel Shahaf
61262ae282
44960: vcs_info cvs: Fix infinite loop when /CVS exists.
2019-12-03 03:03:05 +00:00
Daniel Shahaf
9e771a0b20
44961: vcs_info svn: Fix infinite loop when /.svn exists.
2019-12-03 02:56:02 +00:00
Daniel Shahaf
ce950dd4b4
44962: vcs_info: Document internal function and variable
2019-12-03 02:56:01 +00:00
Daniel Shahaf
98f8a8a980
44958: vcs_info quilt: Avoid forks
2019-11-29 20:57:01 +00:00
Daniel Shahaf
cc3983ee58
44945: vcs_info git: Optimize detection by running fewer external commands.
2019-11-29 20:56:42 +00:00
dana
b70919e0d9
44020: VCS_INFO_detect_p4: Fix infinite recursion
2019-01-27 00:26:31 -06:00
Daniel Shahaf
23154e46e6
43879: vcs_info git: Fix fatal error in VCS_INFO_git_getbranch in corner case
...
Before this commit, the following use-case:
git checkout foo^
git show foo | git am
would result in a fatal error, with vcs_info_msg_N_ not set:
VCS_INFO_git_getbranch:18: no such file or directory: .git/rebase-apply/onto
Now they are set correctly, and HEAD's commit hash is used.
2018-12-13 15:28:00 +00:00
Daniel Shahaf
e38f15f8ff
43620 (tweaked): vcs_info git: Reverse the order patches are passed to gen-unapplied-string in.
...
This is an incompatible change; see README for details.
Tweaks (relative to posted version): tweaked README, removed scalpel (debug print).
2018-10-08 13:44:40 +00:00
Daniel Shahaf
31dcba76f0
43617: vcs_info git: During a non-interactive rebase of a detached head, computer the %b expando correctly.
...
Before this commit, the value of %b was the hash of the commit from the
"source" side of the rebase, from .git/rebase-apply/orig-head and
.git/rebase-apply/original-commit. This broke the invariant that
%b expands to a git-rev-parse(1) expression resolving to what %r
expands to.
Use .git/rebase-apply/onto instead as, empirically, it contains the
correct value.
2018-10-08 13:41:45 +00:00
Daniel Shahaf
0e0219118d
43619: vcs_info git: In non-interactive rebases, always set $hook_com[git_patches_applied] to a string of the form 'foo bar', never just 'foo'.
2018-10-08 13:41:43 +00:00
Daniel Shahaf
a05533e425
43618: vcs_info: Don't redefine helper functions on every execution of the autoloadable outer function.
...
This allows enabling tracing of the helper functions without fned'ing
the outer function.
2018-10-08 13:41:41 +00:00
Daniel Shahaf
5c9ef1a1fa
43587: vcs_info git: In 'git rebase -i', when computing subjects of applied-patches, handle an edge case where the subject is not available.
2018-10-07 15:05:19 +00:00
Daniel Shahaf
0c00eed4c7
43588: vcs_info git: Make sure applied-patches is of the form "$hash $subject" --- that is, has a space and a non-empty second argument --- even with future 'git rebase -i' verbs.
...
Use of '?' is consistent with these precedents:
Backends/VCS_INFO_get_data_git:220: printf -v "git_patches_applied[$p]" "%04d ?" "$p"
Backends/VCS_INFO_get_data_git:242: git_patches_applied+=("? $subject")
Backends/VCS_INFO_get_data_git:244: git_patches_applied+=("?")
VCS_INFO_quilt:160: applied[$i]+=" ?"
VCS_INFO_quilt:168: unapplied[$i]+=" ?"
2018-10-07 15:05:17 +00:00
Daniel Shahaf
a27fad1ae2
43586: vcs_info git: Reformat to minimise next diff. No functional change.
2018-10-07 15:05:15 +00:00
Daniel Shahaf
abc94e8f6a
43585: vcs_info svn: Recognize working copies in need of an upgrade.
2018-10-07 15:05:13 +00:00
Daniel Shahaf
f9952301b2
unposted: Indicate which use-case each branch handles.
2018-10-02 15:22:06 +00:00
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 #4 .
...
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 #3 .
2017-01-25 04:22:32 +00:00
Daniel Shahaf
2702857334
40403/0002: vcs_info set-patch-format helper: Part #2 .
...
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 #1 .
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