-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
git command update-git-for-windows
does not work when rc releases are installed
#1843
Comments
Correct. This is a long-standing bug, and I continue to fail time to work on this. If you have time to spare, I would really welcome your help. |
@dscho Thanks for verifying it. I'll see what I can do. Note to future self: Here is the place to dive into -> https://github.com/git-for-windows/build-extra/blob/54a4e3f9d0b43267fd9156551b70e7df82eb383b/git-extra/git-update-git-for-windows#L11. |
@t-b not only there: the downgrade warning you mentioned is due to InnoSetup failing to detect from looking at the version number in the registry that it was an -rc version. I think we need to make our InnoSetup script smarter so that it stores an extra flag "isPrerelease" or some such, together with the version number before that. Maybe in the PreviousData? That information would then need to be picked up by the "is this a downgrade?" check. |
I addressed this in the meantime. |
This is unfortunately not fixed. Here I get
|
I think this is behaving as intended: the release candidate is a "pre release" but the latest full "release" is v2.31.1.windows.1. The updater is only comparing for exact string equality in the versions, so is not detecting that v2.32.0-rc0 is "newer" than v2.31.1. Now, there might be room for an extension of the feature to perform a (signed) version comparison that will say if the latest release is greater than your current release. |
This was fixed, but the original fix incorrectly assumed RC numbering to start at 1. git-for-windows/build-extra#347 extends that fix to cover rc0 as well. It'll be included in future rc0 pre-releases. |
Just to say I've also experiencing the same issue that the updater isn't suggesting moving forward from the
I'll update/ manually install. https://github.com/git-for-windows/git/releases/ |
Note, my |
Use signed version comparisons before recommending upgrade
Upgrading from rc fails to work here as well. Today I did:
and I had to manually install the new version. If preferred I can also open a new bug. I can't reopen this here. |
You did not run the |
On 16/11/2021 11:24, Thomas Braun wrote:
Upgrading from rc fails to work here as well.
Same here. I was waiting for now to have another go at the problem. It
is, for me, still the `-` vs `.` problem between the two different
sources of 'truth' that are looked up. (IIRC) One is the value obtained
from the GfW web site (the `.txt` file), and the other from the local
`git version` command.
It is a difficult problem because there is only a *partial order* on
versions, as certain release candidates need to be bypassed, so we can
have A>B, while B!<A around the rc versions.
… Today I did:
$ git update-git-for-windows Git for Windows 2.34.0.rc2.windows.1
(64-bit) $ git --version git version 2.34.0.rc2.windows.1
and I had to manually install the new version.
If preferred I can also open a new bug. I can't reopen this here.
|
On 16/11/2021 14:50, Philip Oakley wrote:
On 16/11/2021 11:24, Thomas Braun wrote:
> Upgrading from rc fails to work here as well.
>
Same here. I was waiting for now to have another go at the problem. It
is, for me, still the `-` vs `.` problem between the two different
sources of 'truth' that are looked up. (IIRC)
Looks like that memory is no longer true. However (below..)
https://gitforwindows.org/latest-tag.txt -> "v2.34.0.windows.1" (no dashes)
$ git version -> " git version 2.34.0.rc2.windows.1" (again no dashes)
One is the value obtained
from the GfW web site (the `.txt` file), and the other from the local
`git version` command.
It is a difficult problem because there is only a *partial order* on
versions, as certain release candidates need to be bypassed, so we can
have A>B, while B!<A around the rc versions.
I did spot the --testing option in my C:\Program
Files\Git\mingw64\bin\git-update-git-for-windows version, and that does
offer the update.
at #L253 I inserted `echo "$latest| $git_label $version ($arch_bit)"`
and got
2.34.0.windows.1| Git for Windows 2.34.0.rc2.windows.1 (64-bit)
That's just before the `echo "$git_label $version ($arch_bit)" >&2` line.
Setting -x hasn't helped me much.
But..
C:\Program Files\Git\mingw64\bin\git-update-git-for-windows#L38-41
all the `rc` cases are `-rc` patterns. So not yet sure if this is
significant but..
…
> Today I did:
>
> $ git update-git-for-windows Git for Windows 2.34.0.rc2.windows.1
> (64-bit) $ git --version git version 2.34.0.rc2.windows.1
>
> and I had to manually install the new version.
>
> If preferred I can also open a new bug. I can't reopen this here.
>
>
|
Nope I did not, cause I did not know. Here is the output:
For that I reinstalled:
|
I recently installed rc2 of git for windows 2.19. After the final release of 2.19 I was not prompted with an update message (auto updates are enabled). Manually updating did not work, as
git update-git-for-windows
did not return anything.On manual installation of 2.19 the installer asked me if I want to downgrade.
The text was updated successfully, but these errors were encountered: