<feed xmlns='http://www.w3.org/2005/Atom'>
<title>zsh/Functions/VCS_Info/Backends, branch zsh-5.9.0.2-test</title>
<subtitle>[no description]</subtitle>
<id>http://git.sudomsg.com/mirror/zsh/atom/Functions/VCS_Info/Backends?h=zsh-5.9.0.2-test</id>
<link rel='self' href='http://git.sudomsg.com/mirror/zsh/atom/Functions/VCS_Info/Backends?h=zsh-5.9.0.2-test'/>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/'/>
<updated>2022-12-09T01:39:32Z</updated>
<entry>
<title>51144, 51146: vcs_info git: stg: Extract patch descriptions</title>
<updated>2022-12-09T01:39:32Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2022-12-09T01:39:21Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=510df60dd1f90f99026ac17e341df2313e064509'/>
<id>urn:sha1:510df60dd1f90f99026ac17e341df2313e064509</id>
<content type='text'>
Joint work with Peter Grayson.
</content>
</entry>
<entry>
<title>51142: vcs_info git: Check the get-unapplied style as documented</title>
<updated>2022-12-08T22:09:59Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2022-12-08T21:59:25Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=7cdada166cd9a05103a838d18e9be9811f68bc1d'/>
<id>urn:sha1:7cdada166cd9a05103a838d18e9be9811f68bc1d</id>
<content type='text'>
The style was treated as "always true" rather than as "settable, false
by default" in the rebase-merge and cherry-pick cases.  This affects the
gen-unapplied-string hook, and may also affect gen-applied-string and
set-patch-format hooks if they accessed VCS_INFO_get_data_git's internal
parameters directly.

If this affects you, just set the style in your zshrc:
.
    zstyle ':vcs_info:git*:*:*' get-unapplied true
</content>
</entry>
<entry>
<title>51138: Updated StGit patch detection in vcs_info</title>
<updated>2022-12-08T21:27:35Z</updated>
<author>
<name>Peter Grayson</name>
<email>pete@jpgrayson.net</email>
</author>
<published>2022-12-08T14:52:42Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=ca7c42e1ee1706f39bbeb163ef323c819aee8357'/>
<id>urn:sha1:ca7c42e1ee1706f39bbeb163ef323c819aee8357</id>
<content type='text'>
The vcs_info patch detection code attempted to interrogate StGit patch
stack state by inspecting .git/patches/applied and
.git/patches/unapplied.

As of StGit 0.15 (2009), patch stack metadata is captured in the repo's
object database. And as of StGit 1.0 (2021), no stack or patch state is
maintained in any files in the .git/ directory.

Zsh's approach for interrogating StGit patch state is thus obsoleted.

This patch updates vcs_info to determine whether StGit is initialized on a
branch by looking at the appropriate git refs and uses StGit's prescribed
interface for interrogating applied and unapplied patch state via the `stg
series` command. This approach will work with all versions of StGit &gt;=0.15.

Signed-off-by: Peter Grayson &lt;pete@jpgrayson.net&gt;
</content>
</entry>
<entry>
<title>49728: vcs_info hg mq: Don't include applied patches in the unapplied patches</title>
<updated>2022-02-20T10:16:54Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2022-01-29T16:15:26Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=421f5d7f67976e369ef8613c455d8232e2326f3a'/>
<id>urn:sha1:421f5d7f67976e369ef8613c455d8232e2326f3a</id>
<content type='text'>
For instance, with 4 applied patches, 5 unapplied patches, and no guards
involved, the patch-format style would indicate 9 (= 4+5) unapplied patches
and 4 applied patches.
</content>
</entry>
<entry>
<title>49727 (+ comment): vcs_info quilt: Pass the patches dir path to the gen-applied-string, gen-unapplied-string, and set-patch-format hooks</title>
<updated>2022-02-20T10:16:33Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2022-01-29T16:15:25Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=80389df48067bab3711ad1604bc9554d08fb9994'/>
<id>urn:sha1:80389df48067bab3711ad1604bc9554d08fb9994</id>
<content type='text'>
I use that in my gen-applied-string hook.
</content>
</entry>
<entry>
<title>unposted: vcs_info hg mg (with get-unapplied set): Stop leaking a variable to global scope</title>
<updated>2022-02-20T10:12:56Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2022-02-20T09:45:39Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=b8b7d9b46ac54c4494ec74b2b7ca4c06861eb75d'/>
<id>urn:sha1:b8b7d9b46ac54c4494ec74b2b7ca4c06861eb75d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>unposted: vcs_info git: Add a missing guard against redefining a function.</title>
<updated>2022-01-29T16:01:39Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2022-01-29T13:06:50Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=10ee9e5bd74367dcbf598f27d54ceab43ca68374'/>
<id>urn:sha1:10ee9e5bd74367dcbf598f27d54ceab43ca68374</id>
<content type='text'>
</content>
</entry>
<entry>
<title>unposted: vcs_info git: Deconfuse $EDITOR</title>
<updated>2022-01-29T16:01:39Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2022-01-29T12:47:54Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=42f1e99f816d7b8d2376caea69d0acd85ee729a4'/>
<id>urn:sha1:42f1e99f816d7b8d2376caea69d0acd85ee729a4</id>
<content type='text'>
Work around &lt;https://github.com/chrisbra/vim-zsh/issues/39&gt;.
</content>
</entry>
<entry>
<title>49709: vcs_info hg: Keep $HGPLAIN set for hooks if it had been set outside vcs_info</title>
<updated>2022-01-25T10:11:58Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2022-01-25T08:23:27Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=8460d75869fcddaaa2a6beed9b4d78c60a9fed19'/>
<id>urn:sha1:8460d75869fcddaaa2a6beed9b4d78c60a9fed19</id>
<content type='text'>
If someone does 'HGPLAIN=1 vcs_info', any vcs_info hooks should be called with
HGPLAIN set.  Declaring it 'local' broke that.
</content>
</entry>
<entry>
<title>users/26635 (tweaked): vcs_info hg: Compute the branch name correctly when get-revision is set and check-for-changes is not</title>
<updated>2021-04-21T00:57:59Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2021-04-07T21:48:48Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=9353b12e99827b29b224e5860bcb94636558d01a'/>
<id>urn:sha1:9353b12e99827b29b224e5860bcb94636558d01a</id>
<content type='text'>
Tweak: Simplify an always-true condition.

Review-by: Manuel Jacob
</content>
</entry>
<entry>
<title>47561 (the git and cvs parts) (compare 44919 + 44920): vcs_info internals: cvs, git: Set ${vcs_comm[basedir]} like all other backends do.</title>
<updated>2021-03-29T17:03:40Z</updated>
<author>
<name>Aleksandr Mezin</name>
<email>mezin.alexander@gmail.com</email>
</author>
<published>2021-03-29T15:53:44Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=fc82e8193bad79db5de9e40ec99814fe401ad876'/>
<id>urn:sha1:fc82e8193bad79db5de9e40ec99814fe401ad876</id>
<content type='text'>
That doesn't affect anything, not even other vcs_info internals; it's
just for consistency across backends.
</content>
</entry>
<entry>
<title>47303: vcs_info hg: Fix changing the expansion of %g (hook_com[guards]) in the set-patch-format hook (regression from workers/40480).</title>
<updated>2020-08-09T08:07:01Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2020-08-08T07:29:34Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=5448e1611d2cc4cb436fedfc3e7ff0f1ebfc766b'/>
<id>urn:sha1:5448e1611d2cc4cb436fedfc3e7ff0f1ebfc766b</id>
<content type='text'>
To reproduce, go to a hg repository with active mq guards and configure
vcs_info as follows:

    zstyle '*' get-unapplied true
    zstyle ':vcs_info:*set-patch-format*' hooks f
    zstyle '*' patch-format '[%g : %G]'
    zstyle '*' nopatch-format '[%g : %G]'
    zstyle '*' formats '%m'
    +vi-f () {
    	hook_com[guards]+=XXX
    }

The regression was first released in 5.3.1-test-2, over three years ago.
</content>
</entry>
<entry>
<title>46091: Add code to Mercurial VCS backend to show topic if there is any.</title>
<updated>2020-06-22T08:18:38Z</updated>
<author>
<name>Manuel Jacob</name>
<email>me@manueljacob.de</email>
</author>
<published>2020-06-21T22:22:30Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=ae0129b49f9f1b624fb4b067f6f1ef6757a24fd2'/>
<id>urn:sha1:ae0129b49f9f1b624fb4b067f6f1ef6757a24fd2</id>
<content type='text'>
"Topics" is an experimental concept in Mercurial that augments the
current branching concept (called "named branches").

For more information, see the not always up-to-date Mercurial Wiki page
https://www.mercurial-scm.org/wiki/TopicPlan.
</content>
</entry>
<entry>
<title>45644: vcs_info git: Fix current patch's name in several cases.</title>
<updated>2020-03-28T22:12:33Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2020-03-28T03:40:52Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=2f2aa360bc9a966f819474d349b79fd13191cb16'/>
<id>urn:sha1:2f2aa360bc9a966f819474d349b79fd13191cb16</id>
<content type='text'>
</content>
</entry>
<entry>
<title>45627: vcs_info git: Under git-am(1) conflicts, pass to the gen-applied-string hook information on already-applied patches.</title>
<updated>2020-03-27T01:14:42Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2020-03-26T02:43:41Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=d13d6afb2e788fac8eefeff47e889a54498eea9a'/>
<id>urn:sha1:d13d6afb2e788fac8eefeff47e889a54498eea9a</id>
<content type='text'>
The hook already receives information about the current (topmost
applied) patch and, if the get-unapplied style is set, about future
(unapplied) patches.

Tested in the Functions/VCS_Info/test-repo-git-rebase-apply scenario,
after manually converting the rebase to a «git am».  (Specifically,
I ran:
    mkdir d
    git rebase --abort
    git format-patch rebase_from_this..HEAD -o d
    git checkout rebase_onto_this
    git am d/*
.)
</content>
</entry>
<entry>
<title>45625: vcs_info svn: Detect the "working copy format is too new" error.</title>
<updated>2020-03-27T01:14:42Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2020-03-26T01:32:51Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=f207fb90d8a86c5968e1a3d702ea4cf778bd79d8'/>
<id>urn:sha1:f207fb90d8a86c5968e1a3d702ea4cf778bd79d8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>45626: vcs_info: Deduplicate calling the set-branch-format hook.</title>
<updated>2020-03-27T01:14:42Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2020-03-26T01:32:50Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=cb87816b0f47367a763790adabcec1e331156ea2'/>
<id>urn:sha1:cb87816b0f47367a763790adabcec1e331156ea2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>45624: vcs_info: Set $rrn in all backends.</title>
<updated>2020-03-27T01:14:42Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2020-03-26T01:32:49Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=b0d020408a935d2d1c317206e3eda43217d0d453'/>
<id>urn:sha1:b0d020408a935d2d1c317206e3eda43217d0d453</id>
<content type='text'>
</content>
</entry>
<entry>
<title>45539: vcs_info git: In non-interactive rebases, obtain applied patches' names.</title>
<updated>2020-03-15T00:18:30Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>danielsh@apache.org</email>
</author>
<published>2020-03-12T18:06:22Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=4ce4483daf856aa7e9adfecea8e5ee7f87f0b22c'/>
<id>urn:sha1:4ce4483daf856aa7e9adfecea8e5ee7f87f0b22c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>45540: vcs_info git: In non-interactive rebases, compute patch names for unapplied patches.</title>
<updated>2020-03-15T00:18:28Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>danielsh@apache.org</email>
</author>
<published>2020-03-12T18:06:21Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=e1946bacf82653b4795793abe5ae095e3e65fea7'/>
<id>urn:sha1:e1946bacf82653b4795793abe5ae095e3e65fea7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>45547: vcs_info git: In interactive rebases, process gen-unapplied-string arguments like gen-applied-string arguments are processed.</title>
<updated>2020-03-15T00:18:25Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>danielsh@apache.org</email>
</author>
<published>2020-03-12T18:48:53Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=8e128afb2c655d759d013c98002ef92795a5cafa'/>
<id>urn:sha1:8e128afb2c655d759d013c98002ef92795a5cafa</id>
<content type='text'>
I consider this a bugfix, since it's unexpected for -applied and
-unapplied to differ about this.
</content>
</entry>
<entry>
<title>45546: vcs_info git: In interactive rebases, properly support the full form of the "exec" verb.</title>
<updated>2020-03-15T00:18:23Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>danielsh@apache.org</email>
</author>
<published>2020-03-12T18:48:52Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=c756545014c93448494ee4f1d841d8487601a324'/>
<id>urn:sha1:c756545014c93448494ee4f1d841d8487601a324</id>
<content type='text'>
The code before this commit happened to have done the right thing:
"exec" lines were handled by the catchall forward compatibility case,
which happened to have had virtually the same effect as the correct
case.  However, that was merely an accidental result.  This patch makes
the code do the right thing deliberately, rather than by accident.
</content>
</entry>
<entry>
<title>45545: vcs_info git: In interactive rebases, ignore comment lines.</title>
<updated>2020-03-15T00:18:21Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>danielsh@apache.org</email>
</author>
<published>2020-03-12T18:48:51Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=af57462beb38159637eba7004363d867f41eff50'/>
<id>urn:sha1:af57462beb38159637eba7004363d867f41eff50</id>
<content type='text'>
</content>
</entry>
<entry>
<title>github #48/0002: vcs_info git: properly detect bare repositories</title>
<updated>2020-02-17T10:03:08Z</updated>
<author>
<name>brian m. carlson</name>
<email>sandals@crustytoothpaste.net</email>
</author>
<published>2020-02-16T20:54:12Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=51260963703bbc91944434648ae71a05addbcb05'/>
<id>urn:sha1:51260963703bbc91944434648ae71a05addbcb05</id>
<content type='text'>
We currently detect Git repositories by finding the top level of the
working tree, and if we fail to detect it, assume that we're not in a
repository.  However, there's a case we don't consider: a bare
repository.

Let's detect if the user is in a bare repository by checking if gitdir
is set, and if so, using that if there is no working tree.  We now
detect bare Git repositories with vcs_info, as expected.
</content>
</entry>
<entry>
<title>github #48/0001: vcs_info git: avoid warnings in bare repositories</title>
<updated>2020-02-17T10:02:27Z</updated>
<author>
<name>brian m. carlson</name>
<email>sandals@crustytoothpaste.net</email>
</author>
<published>2020-02-16T00:03:13Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=bacad965238158b9ae6ff438ba923725ec128020'/>
<id>urn:sha1:bacad965238158b9ae6ff438ba923725ec128020</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>44960: vcs_info cvs: Fix infinite loop when /CVS exists.</title>
<updated>2019-12-03T03:03:05Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>danielsh@apache.org</email>
</author>
<published>2019-12-01T00:04:47Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=61262ae2821d375929bd418b6acc8d253bfb2faa'/>
<id>urn:sha1:61262ae2821d375929bd418b6acc8d253bfb2faa</id>
<content type='text'>
</content>
</entry>
<entry>
<title>44961: vcs_info svn: Fix infinite loop when /.svn exists.</title>
<updated>2019-12-03T02:56:02Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>danielsh@apache.org</email>
</author>
<published>2019-12-01T00:04:48Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=9e771a0b203ad9cc953b42111da55207304cdc19'/>
<id>urn:sha1:9e771a0b203ad9cc953b42111da55207304cdc19</id>
<content type='text'>
</content>
</entry>
<entry>
<title>44945: vcs_info git: Optimize detection by running fewer external commands.</title>
<updated>2019-11-29T20:56:42Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2019-11-28T22:02:54Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=cc3983ee586dff16638bdcdea40c784a54026571'/>
<id>urn:sha1:cc3983ee586dff16638bdcdea40c784a54026571</id>
<content type='text'>
</content>
</entry>
<entry>
<title>44020: VCS_INFO_detect_p4: Fix infinite recursion</title>
<updated>2019-01-27T06:26:31Z</updated>
<author>
<name>dana</name>
<email>dana@dana.is</email>
</author>
<published>2019-01-27T06:26:31Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=b70919e0d9dadc93893e9d18bc3ef13b88756ecf'/>
<id>urn:sha1:b70919e0d9dadc93893e9d18bc3ef13b88756ecf</id>
<content type='text'>
</content>
</entry>
<entry>
<title>43879: vcs_info git: Fix fatal error in VCS_INFO_git_getbranch in corner case</title>
<updated>2018-12-13T15:28:00Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2018-12-09T19:41:19Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=23154e46e6864f35c1fc2e052c4ea14fb42014fb'/>
<id>urn:sha1:23154e46e6864f35c1fc2e052c4ea14fb42014fb</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>43620 (tweaked): vcs_info git: Reverse the order patches are passed to gen-unapplied-string in.</title>
<updated>2018-10-08T13:44:40Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2018-10-07T17:46:43Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=e38f15f8ff23651a8c4ef9fc394de7be93eb620f'/>
<id>urn:sha1:e38f15f8ff23651a8c4ef9fc394de7be93eb620f</id>
<content type='text'>
This is an incompatible change; see README for details.

Tweaks (relative to posted version): tweaked README, removed scalpel (debug print).
</content>
</entry>
<entry>
<title>43617: vcs_info git: During a non-interactive rebase of a detached head, computer the %b expando correctly.</title>
<updated>2018-10-08T13:41:45Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2018-10-07T17:46:42Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=31dcba76f07030f1a3c9f9ad6c41dbaf842eeb1a'/>
<id>urn:sha1:31dcba76f07030f1a3c9f9ad6c41dbaf842eeb1a</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>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'.</title>
<updated>2018-10-08T13:41:43Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2018-10-07T17:46:41Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=0e0219118d2df43ee52d44ef5ca93354597d5508'/>
<id>urn:sha1:0e0219118d2df43ee52d44ef5ca93354597d5508</id>
<content type='text'>
</content>
</entry>
<entry>
<title>43618: vcs_info: Don't redefine helper functions on every execution of the autoloadable outer function.</title>
<updated>2018-10-08T13:41:41Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2018-10-07T17:46:40Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=a05533e425ebb36044680f403666dab7bc26a075'/>
<id>urn:sha1:a05533e425ebb36044680f403666dab7bc26a075</id>
<content type='text'>
This allows enabling tracing of the helper functions without fned'ing
the outer function.
</content>
</entry>
<entry>
<title>43587: vcs_info git: In 'git rebase -i', when computing subjects of applied-patches, handle an edge case where the subject is not available.</title>
<updated>2018-10-07T15:05:19Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2018-10-02T15:20:54Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=5c9ef1a1faf42136ce330aa6f8e2123e83497239'/>
<id>urn:sha1:5c9ef1a1faf42136ce330aa6f8e2123e83497239</id>
<content type='text'>
</content>
</entry>
<entry>
<title>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.</title>
<updated>2018-10-07T15:05:17Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2018-10-02T15:20:53Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=0c00eed4c77aee7af64e9272bfd1cddb8663e477'/>
<id>urn:sha1:0c00eed4c77aee7af64e9272bfd1cddb8663e477</id>
<content type='text'>
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]+=" ?"
</content>
</entry>
<entry>
<title>43586: vcs_info git: Reformat to minimise next diff. No functional change.</title>
<updated>2018-10-07T15:05:15Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2018-10-02T15:20:52Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=a27fad1ae2c87bdb4861005719fd7db86827344c'/>
<id>urn:sha1:a27fad1ae2c87bdb4861005719fd7db86827344c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>43585: vcs_info svn: Recognize working copies in need of an upgrade.</title>
<updated>2018-10-07T15:05:13Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2018-09-30T22:16:08Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=abc94e8f6aa8367ce9d6e972d55f8e7d34fb08ec'/>
<id>urn:sha1:abc94e8f6aa8367ce9d6e972d55f8e7d34fb08ec</id>
<content type='text'>
</content>
</entry>
<entry>
<title>unposted: Indicate which use-case each branch handles.</title>
<updated>2018-10-02T15:22:06Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2018-10-02T15:21:53Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=f9952301b2e4ba1c2181beabc02a7e0597358e7b'/>
<id>urn:sha1:f9952301b2e4ba1c2181beabc02a7e0597358e7b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>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.</title>
<updated>2018-08-24T15:50:18Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2018-08-18T15:49:47Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=40d9681b6294fbc6727056320e0f84b06885eeeb'/>
<id>urn:sha1:40d9681b6294fbc6727056320e0f84b06885eeeb</id>
<content type='text'>
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".
</content>
</entry>
<entry>
<title>43314: vcs_info git: Flatten a nested if.</title>
<updated>2018-08-24T15:49:38Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2018-08-18T15:37:44Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=4cfbbf9ca5f1f7f6e79681fbad43daf674157727'/>
<id>urn:sha1:4cfbbf9ca5f1f7f6e79681fbad43daf674157727</id>
<content type='text'>
No functional change.
</content>
</entry>
<entry>
<title>43030: Replace VCS_INFO_realpath() by :P</title>
<updated>2018-06-16T17:03:23Z</updated>
<author>
<name>dana</name>
<email>dana@dana.is</email>
</author>
<published>2018-06-16T17:03:23Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=faa07d064bb2bd9cd9892a255a4b63811242b9fb'/>
<id>urn:sha1:faa07d064bb2bd9cd9892a255a4b63811242b9fb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>41952: Use HGPLAIN instead of HGRCPATH in VCS_INFO_get_data_hg</title>
<updated>2017-10-25T08:34:34Z</updated>
<author>
<name>Alexey Sokolov</name>
<email>sokolov@google.com</email>
</author>
<published>2017-10-24T17:08:50Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=1a5d8a6916667819ba09a247c90b1ced5e186464'/>
<id>urn:sha1:1a5d8a6916667819ba09a247c90b1ced5e186464</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>Julien Nicoulaud: 40586: discard stderr</title>
<updated>2017-02-22T04:45:18Z</updated>
<author>
<name>Barton E. Schaefer</name>
<email>schaefer@zsh.org</email>
</author>
<published>2017-02-22T04:45:18Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=1b0541c52fa20be241a7e601e7650731741d5797'/>
<id>urn:sha1:1b0541c52fa20be241a7e601e7650731741d5797</id>
<content type='text'>
</content>
</entry>
<entry>
<title>40492: vcs_info: Escape '%' signs in payloads.</title>
<updated>2017-02-09T15:24:04Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2017-02-05T08:28:13Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=ecd88284f358cbcd787757184bbf8704779cab1a'/>
<id>urn:sha1:ecd88284f358cbcd787757184bbf8704779cab1a</id>
<content type='text'>
Test case: a patch whose subject is '%Sfoo%sbar'.  ('S' and 's' are
expandos both in prompts and in the 'formats' style.)
</content>
</entry>
<entry>
<title>unposted: vcs_info git: Fix typo in manual.</title>
<updated>2017-02-04T05:55:46Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2017-02-04T05:42:31Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=bb6c08b51a0798700b6fdd0b75581dca21dc4e5b'/>
<id>urn:sha1:bb6c08b51a0798700b6fdd0b75581dca21dc4e5b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>40480: vcs_info set-patch-format: Eliminate the remaining code duplication.</title>
<updated>2017-02-03T18:14:01Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2017-02-01T19:05:45Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=33c0a104482a0299d5d065b88c180ea6975269c0'/>
<id>urn:sha1:33c0a104482a0299d5d065b88c180ea6975269c0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>40479: vcs_info set-patch-format: Prepare for more code sharing between the callers.</title>
<updated>2017-02-03T18:14:00Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2017-02-01T19:05:44Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=9211d7f2777abaedfacf98812104d579c3b861f3'/>
<id>urn:sha1:9211d7f2777abaedfacf98812104d579c3b861f3</id>
<content type='text'>
This changes hook invocation order in the hg backend.
</content>
</entry>
<entry>
<title>40481: vcs_info hg: Pass arguments to the set-patch-format hook.</title>
<updated>2017-02-03T18:13:59Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2017-02-01T19:05:43Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=fca4f90bbac07b8e9bb29ae3267aeccf0f85d56d'/>
<id>urn:sha1:fca4f90bbac07b8e9bb29ae3267aeccf0f85d56d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>40403/0004: vcs_info set-patch-format helper: Part #4.</title>
<updated>2017-01-25T04:22:32Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2017-01-23T18:15:35Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=2854a67e09748a2e6f4e1d8a73bc463bad4cbd4e'/>
<id>urn:sha1:2854a67e09748a2e6f4e1d8a73bc463bad4cbd4e</id>
<content type='text'>
This also fixes the %a (${hook_com[all-n]}) expando in the hg backend:
before this change, it counted only unapplied changes.
</content>
</entry>
<entry>
<title>40403/0003: vcs_info set-patch-format helper: Part #3.</title>
<updated>2017-01-25T04:22:32Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2017-01-23T18:15:35Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=edd9798de765049a904e0afa830b191d1932087d'/>
<id>urn:sha1:edd9798de765049a904e0afa830b191d1932087d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>40403/0002: vcs_info set-patch-format helper: Part #2.</title>
<updated>2017-01-25T04:22:31Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2017-01-23T18:15:35Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=270285733442a46cd157ade4600e4073e255a563'/>
<id>urn:sha1:270285733442a46cd157ade4600e4073e255a563</id>
<content type='text'>
Not all callers reset ${hook_com}, but those that don't, immediately
overwrite it a few lines later.
</content>
</entry>
<entry>
<title>40403/0001: vcs_info set-patch-format helper: Part #1.</title>
<updated>2017-01-25T04:22:30Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2017-01-23T18:15:35Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=0ea1957608a6b496fc244078ce9e24f00327aba9'/>
<id>urn:sha1:0ea1957608a6b496fc244078ce9e24f00327aba9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>40401: vcs_info git: Fix the %c patch-format expando.</title>
<updated>2017-01-25T04:22:30Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2017-01-23T19:06:39Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=57013f8b96520057fda4b0d5057646c83465d1b6'/>
<id>urn:sha1:57013f8b96520057fda4b0d5057646c83465d1b6</id>
<content type='text'>
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).
</content>
</entry>
<entry>
<title>40149: vcs_info git: Avoid a fork.</title>
<updated>2016-12-16T10:48:10Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2016-12-11T04:01:45Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=816084c0acc99cc67cdb0706ab295e107b906e4b'/>
<id>urn:sha1:816084c0acc99cc67cdb0706ab295e107b906e4b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>unposted: vcs_info git: Handle rebase-apply sequences with &gt;=10000 patches.</title>
<updated>2016-12-04T21:37:02Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2016-12-03T13:52:00Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=f71de84f1d9f7c2d63226a2e5534fc12d05ec716'/>
<id>urn:sha1:f71de84f1d9f7c2d63226a2e5534fc12d05ec716</id>
<content type='text'>
Review-by: Frank Terbeck
</content>
</entry>
<entry>
<title>40074: vcs_info git: rfc822-unfold rebase-apply patch subjects when msg-clean is unavailable.</title>
<updated>2016-12-04T21:37:01Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2016-12-03T10:34:46Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=d9237ccdbfb0f24ca40fead41de79e13b5f712be'/>
<id>urn:sha1:d9237ccdbfb0f24ca40fead41de79e13b5f712be</id>
<content type='text'>
Example (in this repository):

    git -c merge.merge-changelog.driver=/bin/false rebase --onto=1955cce^^  1955cce^ 1955cce
</content>
</entry>
<entry>
<title>Get subject of current patch in rebase-apply mode</title>
<updated>2016-12-02T23:18:22Z</updated>
<author>
<name>Daniel Hahler</name>
<email>git@thequod.de</email>
</author>
<published>2016-11-20T01:21:39Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=ccf50048ac5bbef3f66164bd420d7c178ddd53ad'/>
<id>urn:sha1:ccf50048ac5bbef3f66164bd420d7c178ddd53ad</id>
<content type='text'>
</content>
</entry>
<entry>
<title>39786: vcs_info (hg): Use native hexdump implementation instead of external command.</title>
<updated>2016-10-31T18:35:47Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2016-10-31T18:35:19Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=74aa45910b3711622e9eb5ccf8adef9566db6f62'/>
<id>urn:sha1:74aa45910b3711622e9eb5ccf8adef9566db6f62</id>
<content type='text'>
Fixes issue whereby the external command would print "*" for repeated
octets.

Includes comment change, cf 39790.
</content>
</entry>
<entry>
<title>39423: vcs_info git: Produce nicer applied-string messages for 'exec' actions.</title>
<updated>2016-09-24T07:22:15Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2016-09-23T06:47:31Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=889f6690fd678ed2fdeb4d467e5b8db49b9c6667'/>
<id>urn:sha1:889f6690fd678ed2fdeb4d467e5b8db49b9c6667</id>
<content type='text'>
This changes the behaviour on "unknown" git-rebase actions (those other
than pick/reword/edit/fixup/squash/execute).
</content>
</entry>
<entry>
<title>unposted: Fix typo in comment.</title>
<updated>2016-01-15T06:30:06Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2016-01-15T06:30:06Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=a45a9fa1042cc48e4d99311c5aa25f029f8a13c2'/>
<id>urn:sha1:a45a9fa1042cc48e4d99311c5aa25f029f8a13c2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>37612: vcs_info git: Set $git_patches_unapplied correctly for 'rebase-apply' case.</title>
<updated>2016-01-15T06:29:09Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2016-01-14T00:13:43Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=ce1148db45b55b2977c72e4a4b78e51e709db022'/>
<id>urn:sha1:ce1148db45b55b2977c72e4a4b78e51e709db022</id>
<content type='text'>
This manifested, e.g., in 'git am' of a single patch that had a conflict.
</content>
</entry>
<entry>
<title>37252: vcs_info git: Compute %b correctly with "rebase --onto" of detached heads. (Follow-up to 36725.)</title>
<updated>2015-11-30T03:42:47Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2015-11-30T03:23:57Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=502d55c01494fabd1d98c67aab0a9746d59b715a'/>
<id>urn:sha1:502d55c01494fabd1d98c67aab0a9746d59b715a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>37025: vcs_info git: Add a cherry-pick patch-format</title>
<updated>2015-11-13T20:17:27Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2015-10-30T15:08:53Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=f59864ce7a4a18efbfa5a330895d120ea1ce18f2'/>
<id>urn:sha1:f59864ce7a4a18efbfa5a330895d120ea1ce18f2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>36832: vcs_info: Remove dependency on "seq"</title>
<updated>2015-10-11T10:54:30Z</updated>
<author>
<name>Frank Terbeck</name>
<email>ft@bewatermyfriend.org</email>
</author>
<published>2015-10-11T10:39:56Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=e245dd71936d1c22fce39f02c203ed2cdb43a548'/>
<id>urn:sha1:e245dd71936d1c22fce39f02c203ed2cdb43a548</id>
<content type='text'>
The "seq" utility is usually available on GNU systems only. This
exchanges calls to seq with pure zsh features. Also: Less forks are
good.
</content>
</entry>
<entry>
<title>36830: vcs_info: Silence an error message with new git versions</title>
<updated>2015-10-11T10:29:41Z</updated>
<author>
<name>Frank Terbeck</name>
<email>ft@bewatermyfriend.org</email>
</author>
<published>2015-10-11T09:54:06Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=7a1678767f44f200295d88dfea94902718275266'/>
<id>urn:sha1:7a1678767f44f200295d88dfea94902718275266</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>36725: vcs_info git: Compute %b correctly when "git am"-ing onto detached heads.</title>
<updated>2015-09-30T21:43:37Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2015-09-30T14:21:59Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=a90cf551efc92184ab25da25b837296d1c4edc8a'/>
<id>urn:sha1:a90cf551efc92184ab25da25b837296d1c4edc8a</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>36725: vcs_info git: Compute %b correctly when rebasing detached heads.</title>
<updated>2015-09-30T21:43:37Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2015-09-30T14:21:59Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=cd1cda9d57ff9f44d285bcd867721c4024500837'/>
<id>urn:sha1:cd1cda9d57ff9f44d285bcd867721c4024500837</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>36725: vcs_info git: Compute %b correctly when merging to detached heads.</title>
<updated>2015-09-30T21:43:37Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2015-09-30T14:21:59Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=7ac34a3055d87b88d8b1b28ddfe68982f6550a08'/>
<id>urn:sha1:7ac34a3055d87b88d8b1b28ddfe68982f6550a08</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>36601: vcs_info: handle missing .git/rebase-apply/{next,msg-clean}</title>
<updated>2015-09-28T18:03:12Z</updated>
<author>
<name>Daniel Hahler</name>
<email>git@thequod.de</email>
</author>
<published>2015-09-23T18:55:40Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=45bdc87a1f4058f9a8cd5eaceda704284d4a89a1'/>
<id>urn:sha1:45bdc87a1f4058f9a8cd5eaceda704284d4a89a1</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>36410: vcs_info git: Present merge heads as patches</title>
<updated>2015-09-05T10:47:44Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2015-09-03T09:24:16Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=880579dc1e368bd6111b6f2d4c4449f4d42cd1b3'/>
<id>urn:sha1:880579dc1e368bd6111b6f2d4c4449f4d42cd1b3</id>
<content type='text'>
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
</content>
</entry>
<entry>
<title>36209: vcs_info: avoid grep error message when file is missing</title>
<updated>2015-08-17T23:00:25Z</updated>
<author>
<name>brian m. carlson</name>
<email>sandals@crustytoothpaste.net</email>
</author>
<published>2015-08-17T22:45:31Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=9a369d39e13787c376c57713ab8c14e5c0f4bfb8'/>
<id>urn:sha1:9a369d39e13787c376c57713ab8c14e5c0f4bfb8</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>36077: vcs_info: stop exporting everything</title>
<updated>2015-08-12T02:31:22Z</updated>
<author>
<name>Mikael Magnusson</name>
<email>mikachu@gmail.com</email>
</author>
<published>2015-08-09T21:53:24Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=c5abf2bcff289363207e0faae8fd33413f59231f'/>
<id>urn:sha1:c5abf2bcff289363207e0faae8fd33413f59231f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>34673: vcs_info git: Fix error message when rebase hasn't started</title>
<updated>2015-03-09T20:03:37Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2015-03-09T20:03:05Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=57be7b743fbd7afb86edaac3ac86ef34182f86b9'/>
<id>urn:sha1:57be7b743fbd7afb86edaac3ac86ef34182f86b9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>vcs_info hg: Support inactive bookmarks</title>
<updated>2015-01-25T00:42:05Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2015-01-24T06:41:42Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=9d25fd72553caff0008d35670544c0ab909c0224'/>
<id>urn:sha1:9d25fd72553caff0008d35670544c0ab909c0224</id>
<content type='text'>
(Similar to git detached heads)
</content>
</entry>
<entry>
<title>33391: vcs_info git: fix applied patch detection on git am</title>
<updated>2014-10-09T16:11:08Z</updated>
<author>
<name>Marc Finet</name>
<email>m.dreadlock@gmail.com</email>
</author>
<published>2014-10-08T22:24:45Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=0f73b35f4e0d8adad216ee6650bfef4622df43b1'/>
<id>urn:sha1:0f73b35f4e0d8adad216ee6650bfef4622df43b1</id>
<content type='text'>
git-am also uses .git/rebase-apply for patch list but
the file original-commit does not exist (as no commit exist).
This patch handles both git rebase and git am. Also:
 - get the first line (rather than the first char) when the message
   contains only one line;
 - remove unused function (ironically that should have been used here).
</content>
</entry>
<entry>
<title>33217: vcs_info: use `--ignore-submodules=dirty` with diff/diff-index</title>
<updated>2014-09-22T21:23:03Z</updated>
<author>
<name>Daniel Hahler</name>
<email>dhahler@gmail.com</email>
</author>
<published>2014-09-22T14:37:23Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=64e2b4426e72e0359cd4c621ab2e2f521050e620'/>
<id>urn:sha1:64e2b4426e72e0359cd4c621ab2e2f521050e620</id>
<content type='text'>
This will detect changes to submodules from the superproject's
perspective, e.g. after `git rm submodule`.

&gt;From GIT-DIFF-INDEX(1)/GIT-DIFF(1):

    Using "dirty" ignores all changes to the work tree of submodules,
    only changes to the commits stored in the superproject are shown
    (this was the behavior until 1.7.0).
</content>
</entry>
<entry>
<title>33184: vcs_info git: consider patches for rebase</title>
<updated>2014-09-16T21:20:55Z</updated>
<author>
<name>Marc Finet</name>
<email>m.dreadlock@gmail.com</email>
</author>
<published>2014-09-16T20:07:59Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=9c29a4f1f6297d97d4644b074f7246b980751e2b'/>
<id>urn:sha1:9c29a4f1f6297d97d4644b074f7246b980751e2b</id>
<content type='text'>
Since a rebase contains a list of patches to re-apply, re-use the
facility for stgit to have the same mechanism.
The patch list given to the gen-{un,}applied-string hooks is an array
with the sha1 and the subject of the commit. On rebase merge, the
applied patches prior to current contains only a number and "?".
</content>
</entry>
<entry>
<title>33188: vcs_info git: set rrn before using it</title>
<updated>2014-09-16T21:20:52Z</updated>
<author>
<name>Marc Finet</name>
<email>m.dreadlock@gmail.com</email>
</author>
<published>2014-09-16T20:57:26Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=2c2d4f9627258640df44a4da4e5627e4d8c5044d'/>
<id>urn:sha1:2c2d4f9627258640df44a4da4e5627e4d8c5044d</id>
<content type='text'>
This would fix handling get-revision, check-for-changes or
check-for-staged-changes when set per repository.
</content>
</entry>
<entry>
<title>33145: vcs_info git: fix applied-string name</title>
<updated>2014-09-14T10:02:37Z</updated>
<author>
<name>Marc Finet</name>
<email>m.dreadlock@gmail.com</email>
</author>
<published>2014-09-12T21:30:41Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=d5f574e20a7cc4c202433fe28f30c37b13299d61'/>
<id>urn:sha1:d5f574e20a7cc4c202433fe28f30c37b13299d61</id>
<content type='text'>
Documentation and hg backend use applied-string. patch-string does not
appear anywhere.
</content>
</entry>
<entry>
<title>33147: vcs_info git: detect revert or cherry-pick with multiple commits</title>
<updated>2014-09-14T10:02:36Z</updated>
<author>
<name>Marc Finet</name>
<email>m.dreadlock@gmail.com</email>
</author>
<published>2014-09-12T21:30:37Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=5e40996891e0eaa9d35177e5e848a4b46d47b97e'/>
<id>urn:sha1:5e40996891e0eaa9d35177e5e848a4b46d47b97e</id>
<content type='text'>
When revert or cherry-pick involve many commits the .git/sequencer
directory holds context for the action and no CHERRY_PICK_HEAD exist.
</content>
</entry>
<entry>
<title>33047: use git to simplify massively source distribution file selection</title>
<updated>2014-08-23T20:01:58Z</updated>
<author>
<name>Peter Stephenson</name>
<email>p.w.stephenson@ntlworld.com</email>
</author>
<published>2014-08-23T20:01:58Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=cc6e9db29da73bb226b6e53ff4df0f135207d206'/>
<id>urn:sha1:cc6e9db29da73bb226b6e53ff4df0f135207d206</id>
<content type='text'>
</content>
</entry>
<entry>
<title>32662: vcs_info git: Fix stagedstr for empty repos</title>
<updated>2014-06-02T13:17:04Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2014-05-30T23:50:55Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=b85b09b78b52b07cf0b83ae7892676327828a37f'/>
<id>urn:sha1:b85b09b78b52b07cf0b83ae7892676327828a37f</id>
<content type='text'>
In empty repositories, HEAD is an unresolvable symbolic ref.  Start computing
stagedstr/unstagedstr in that case; for the former, use a different method
than the non-empty-repository case.
</content>
</entry>
<entry>
<title>32621: vcs_info svn: 'Fix set-branch-format' when in subdirs</title>
<updated>2014-05-29T14:50:07Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2014-05-25T21:56:26Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=55d5feed30938da181fbbbef34ad0ae0699714f2'/>
<id>urn:sha1:55d5feed30938da181fbbbef34ad0ae0699714f2</id>
<content type='text'>
The previous code would fail to detect the wcroot with Subversion 1.7+
when cwd is at least two levels below the root (i.e., ../../.svn exists
and ../.svn doesn't), and would then pass to the hook the revision and
basename of cwd rather than of the wcroot.
</content>
</entry>
<entry>
<title>32619: vcs_info svn: Use the revision of cwd</title>
<updated>2014-05-29T14:50:07Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2014-05-25T21:53:35Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=bb271217fe16bc260a4a7ffa29b674c2a7abbc8e'/>
<id>urn:sha1:bb271217fe16bc260a4a7ffa29b674c2a7abbc8e</id>
<content type='text'>
Previously, the value of the wc root would be used.  In Subversion,
it makes more sense to use the revision of cwd, since all commands
(e.g., 'svn ci', 'svnversion') operate only on cwd and below, not on
wcroot and below.
</content>
</entry>
<entry>
<title>32597: vcs_info git: Describe detached heads symbolically.</title>
<updated>2014-05-06T12:22:10Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2014-04-08T21:07:28Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=6a201af3416ae177a66486e9af500c25a117c91e'/>
<id>urn:sha1:6a201af3416ae177a66486e9af500c25a117c91e</id>
<content type='text'>
This makes %b expand to a refname rather than a sha1 when HEAD is detached but
happens to match some ref (branch, tag, etc).  The resulting output will
typically contain a slash (e.g., "tags/v1.0.2", "heads/mybranch"), which helps
distinguish it from the output in the "HEAD is a symbolic ref" case.
</content>
</entry>
<entry>
<title>32528: vcs_info: Add check-for-staged-changes</title>
<updated>2014-04-05T08:56:52Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2014-03-28T11:00:35Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=eb4c70d0b7856a8ddfeb4ea2d3d83991f5cb82d3'/>
<id>urn:sha1:eb4c70d0b7856a8ddfeb4ea2d3d83991f5cb82d3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>32264: vcs_info, hg: Support detecting repos using ShareExtension</title>
<updated>2014-01-17T07:58:52Z</updated>
<author>
<name>Frank Terbeck</name>
<email>ft@bewatermyfriend.org</email>
</author>
<published>2014-01-16T15:05:11Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=82a3591f577a05f0941a425a631fae8058fa23ba'/>
<id>urn:sha1:82a3591f577a05f0941a425a631fae8058fa23ba</id>
<content type='text'>
</content>
</entry>
<entry>
<title>32089: tweak to detect Subversion repository</title>
<updated>2013-12-05T20:06:34Z</updated>
<author>
<name>Daniel Shahaf</name>
<email>d.s@daniel.shahaf.name</email>
</author>
<published>2013-12-03T21:06:15Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=c1a15fb1522b85a0780ce3f67ec1254115b18501'/>
<id>urn:sha1:c1a15fb1522b85a0780ce3f67ec1254115b18501</id>
<content type='text'>
</content>
</entry>
<entry>
<title>32066: fix %r and %S in vcs_info formats when a repository subdirectory is accessed via a symlink</title>
<updated>2013-11-29T20:32:36Z</updated>
<author>
<name>Barton E. Schaefer</name>
<email>schaefer@zsh.org</email>
</author>
<published>2013-11-29T20:32:36Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=9972fdeead12204192cd40e4331ff8f89434df04'/>
<id>urn:sha1:9972fdeead12204192cd40e4331ff8f89434df04</id>
<content type='text'>
31985 Clemens Hammacher and 32064 Hong Xu
</content>
</entry>
<entry>
<title>31485: vcs_info, git: Avoid error messages for `guilt' users</title>
<updated>2013-06-18T07:16:59Z</updated>
<author>
<name>Frank Terbeck</name>
<email>ft@bewatermyfriend.org</email>
</author>
<published>2013-06-18T06:39:30Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=88599a0508d584c8e899dc74640b5d58d3ec03c6'/>
<id>urn:sha1:88599a0508d584c8e899dc74640b5d58d3ec03c6</id>
<content type='text'>
Guilt uses the same internal directory for keeping state as stgit, but
it doesn't use the same files (not surprisingly). This caused error
messages due to missing files.

This fixes that by making the "stgit-active?" test stricter.

Reported-by: Axel Beckert &lt;abe@debian.org&gt;
</content>
</entry>
<entry>
<title>31136: vcs_info: just set parameters instead of passing over a pipe</title>
<updated>2013-03-10T13:18:32Z</updated>
<author>
<name>Mikael Magnusson</name>
<email>mikachu@gmail.com</email>
</author>
<published>2013-03-10T13:18:32Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=44907223ff14d424dbfcec4871e41053a07a1dc7'/>
<id>urn:sha1:44907223ff14d424dbfcec4871e41053a07a1dc7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>30639: Add support for showing the current action is cherry-pick to vcs_info git backend</title>
<updated>2013-03-10T12:47:39Z</updated>
<author>
<name>Mikael Magnusson</name>
<email>mikachu@gmail.com</email>
</author>
<published>2013-03-10T12:47:39Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=0c8625299ae79759ef909c0909b8f7e9b9003d30'/>
<id>urn:sha1:0c8625299ae79759ef909c0909b8f7e9b9003d30</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Baptiste Daroussin: 30703: VCS_INFO_detect_fossil: Fix fossil detection on unix</title>
<updated>2012-09-28T22:11:32Z</updated>
<author>
<name>Frank Terbeck</name>
<email>bewater@users.sourceforge.net</email>
</author>
<published>2012-09-28T22:11:32Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=2e6363ed505157fd09f3f473356912bddf8ba640'/>
<id>urn:sha1:2e6363ed505157fd09f3f473356912bddf8ba640</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Seth House: 30702: contrib.yo, VCS_INFO_get_data_hg: Removed --debug flag from the hg vcs_info backend</title>
<updated>2012-09-28T22:07:29Z</updated>
<author>
<name>Frank Terbeck</name>
<email>bewater@users.sourceforge.net</email>
</author>
<published>2012-09-28T22:07:29Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=feb6169bcd8920ccda0ee20b8089d9f3ca8010ba'/>
<id>urn:sha1:feb6169bcd8920ccda0ee20b8089d9f3ca8010ba</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Stepan Koltsov: vcs_info: %a to output number of all patches in (no)?patch-format styles</title>
<updated>2012-08-17T08:22:52Z</updated>
<author>
<name>Frank Terbeck</name>
<email>bewater@users.sourceforge.net</email>
</author>
<published>2012-08-17T08:22:52Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=3aae0ef8fecd69c983e6452a6b4f9c641cac9ab1'/>
<id>urn:sha1:3aae0ef8fecd69c983e6452a6b4f9c641cac9ab1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Juliano Ravasi: VCS_INFO_get_data_git: Fix initialisation of `$stgit_unapplied'</title>
<updated>2012-05-23T07:39:48Z</updated>
<author>
<name>Frank Terbeck</name>
<email>bewater@users.sourceforge.net</email>
</author>
<published>2012-05-23T07:39:48Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=c45bb3e70c616b359f05e4fac0414375aa93acf1'/>
<id>urn:sha1:c45bb3e70c616b359f05e4fac0414375aa93acf1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>30046: VCS_INFO_get_data_svn: Fix support for subversion version 1.7</title>
<updated>2011-12-30T13:32:51Z</updated>
<author>
<name>Frank Terbeck</name>
<email>bewater@users.sourceforge.net</email>
</author>
<published>2011-12-30T13:32:51Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=ee03cac7fea67062eff3340b018b8d38c35f6a95'/>
<id>urn:sha1:ee03cac7fea67062eff3340b018b8d38c35f6a95</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Akinori MUSHA: 29900: Backends/VCS_INFO_detect_svn: Adjust detection to support subversion 1.7.</title>
<updated>2011-11-09T17:49:25Z</updated>
<author>
<name>Frank Terbeck</name>
<email>bewater@users.sourceforge.net</email>
</author>
<published>2011-11-09T17:49:25Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=6ed7fab103836bb4fd716e90eef255630674fffe'/>
<id>urn:sha1:6ed7fab103836bb4fd716e90eef255630674fffe</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Jan Pobrislo: 29411: vcs_info: Major bzr backend update.</title>
<updated>2011-05-31T19:07:06Z</updated>
<author>
<name>Frank Terbeck</name>
<email>bewater@users.sourceforge.net</email>
</author>
<published>2011-05-31T19:07:06Z</published>
<link rel='alternate' type='text/html' href='http://git.sudomsg.com/mirror/zsh/commit/?id=5e2a1cf4cc261d9b9c6f9dea5a53983e04afe275'/>
<id>urn:sha1:5e2a1cf4cc261d9b9c6f9dea5a53983e04afe275</id>
<content type='text'>
</content>
</entry>
</feed>
