diff --git a/content/faq.md b/content/faq.md index a2b593c..0aa6820 100644 --- a/content/faq.md +++ b/content/faq.md @@ -60,7 +60,7 @@ For extracting 7z/zip archives see [page](./zip-archives-extracting-the-released ## Are there 'Nightly' builds of the latest and greatest -The Git for Windows builds are not quite that frequent, but there are Snapshot builds listed at https://wingit.blob.core.windows.net/files/index.html +The Git for Windows builds are not quite that frequent, but there are [Snapshot builds](https://gitforwindows.org/git-snapshots/). These often 'fix' (or attempt fixes) recent issues before a new formal release. Check their commit notes and links to issues to see if your problem is included. diff --git a/content/install-inside-msys2-proper.md b/content/install-inside-msys2-proper.md index d62f95c..a1441fe 100644 --- a/content/install-inside-msys2-proper.md +++ b/content/install-inside-msys2-proper.md @@ -16,47 +16,61 @@ Here are the steps to install the 64-bit version of Git for Windows to be run in 1. Edit `/etc/pacman.conf` and add the Git for Windows package repositories above any others (i.e. just before `[mingw32]` on line #71 as of this writing): - [git-for-windows] - Server = https://wingit.blob.core.windows.net/x86-64 + ``` + [git-for-windows-x86_64] + Server = https://raw.githubusercontent.com/git-for-windows/pacman-repo/refs/heads/x86_64 - [git-for-windows-mingw32] - Server = https://wingit.blob.core.windows.net/i686 + [git-for-windows-mingw32] + Server = https://raw.githubusercontent.com/git-for-windows/pacman-repo/refs/heads/i686 + ``` (The above is correct. The second, MINGW-only repository is for the other architecture.) This step can be done with the following `sed` command (make sure to do proper backup before trying it): - sed -i '/^\[mingw32\]/{ s|^|[git-for-windows]\nServer = https://wingit.blob.core.windows.net/x86-64\n\n[git-for-windows-mingw32]\nServer = https://wingit.blob.core.windows.net/i686\n\n|; }' /etc/pacman.conf + ``` + sed -i '/^\[mingw32\]/{ s|^|[git-for-windows-x86_64]\nServer = https://raw.githubusercontent.com/git-for-windows/pacman-repo/refs/heads/x86_64\n\n[git-for-windows-mingw32]\nServer = https://raw.githubusercontent.com/git-for-windows/pacman-repo/refs/heads/i686\n\n|; }' /etc/pacman.conf + ``` To avoid the future signature related issues, run the following commands first - rm -r /etc/pacman.d/gnupg/ - pacman-key --init - pacman-key --populate msys2 + ``` + rm -r /etc/pacman.d/gnupg/ + pacman-key --init + pacman-key --populate msys2 + ``` 2. Authorize the signing key with: - curl -L https://raw.githubusercontent.com/git-for-windows/build-extra/HEAD/git-for-windows-keyring/git-for-windows.gpg | - pacman-key --add - && - pacman-key --lsign-key E8325679DFFF09668AD8D7B67115A57376871B1C && - pacman-key --lsign-key 3B6D86A1BA7701CD0F23AED888138B9E1A9F3986 + ``` + curl -L https://raw.githubusercontent.com/git-for-windows/build-extra/HEAD/git-for-windows-keyring/git-for-windows.gpg | + pacman-key --add - && + pacman-key --lsign-key E8325679DFFF09668AD8D7B67115A57376871B1C && + pacman-key --lsign-key 3B6D86A1BA7701CD0F23AED888138B9E1A9F3986 + ``` 3. Then synchronize with new repositories with - pacman -Syyuu + ``` + pacman -Syyuu + ``` - This installs a new `msys2-runtime` and therefore will ask you to terminate all MSYS2 processes. Save what you need from other open MSYS2 shells and programs, exit them and confirm the Pacman prompt. + This installs a new `msys2-runtime` and therefore will ask you to terminate all MSYS2 processes. Save what you need from other open MSYS2 shells and programs, exit them and confirm the Pacman prompt. Double-check Task Manager and kill `pacman.exe` if it's still running after the window is closed. Start a new MSYS2 terminal. 4. Then synchronize *again* to install the rest: - pacman -Suu + ``` + pacman -Suu + ``` It might happen that some packages are downgraded, this is expected. 5. And finally install the packages containing Git, its documentation and some extra things: - pacman -S mingw-w64-x86_64-{git,git-doc-html,git-doc-man} mingw-w64-x86_64-git-extra + ``` + pacman -S mingw-w64-x86_64-{git,git-doc-html,git-doc-man} mingw-w64-x86_64-git-extra + ``` Now you can close the current shell and open a MINGW64 shell (`msys2_shell.cmd -mingw64`) to check that everything went well. Run `git --version` and it should output something like `git version 2.31.0.windows.1` (or newer). diff --git a/content/releasing-git-for-windows.md b/content/releasing-git-for-windows.md index 6973a70..c500297 100644 --- a/content/releasing-git-for-windows.md +++ b/content/releasing-git-for-windows.md @@ -128,11 +128,11 @@ Sadly, things are broken a lot. In those cases, the logs have to be analyzed, an This step is trivial: `git push origin :main` where `` is something like `rebase-to-v2.37.0`. -This will trigger another "Git artifacts" run, which will figure out that there is a GitHub Release for that commit, download those artifacts, then trigger a run of [the `Snapshots` Release Pipeline](https://dev.azure.com/git-for-windows/git/_release?definitionId=2&view=mine&_a=releases), which will then upload [the snapshot](https://wingit.blob.core.windows.net/files/index.html). +This will trigger another "Git artifacts" run, which will figure out that there is a GitHub Release for that commit, download those artifacts, then trigger a run of [the `Snapshots` Release Pipeline](https://dev.azure.com/git-for-windows/git/_release?definitionId=2&view=mine&_a=releases), which will then upload [the snapshot](https://gitforwindows.org/git-snapshots/). It is important to wait with pushing to `main` until there is a GitHub Release, otherwise the "Git artifacts" Pipeline would build _another_ set of artifacts and upload those, but we do want to use the same artifacts as were uploaded to GitHub Releases. -Note: The idea is to push to `main` relatively soon after the Release Pipeline finished, to keep the Pacman repository, the [snapshots](https://wingit.blob.core.windows.net/files/index.html) and the `main` branches as aligned as possible. +Note: The idea is to push to `main` relatively soon after the Release Pipeline finished, to keep the Pacman repository, the [snapshots](https://gitforwindows.org/git-snapshots/) and the `main` branches as aligned as possible. ## How to release a quick-fix release diff --git a/content/snaps.md b/content/snaps.md new file mode 100644 index 0000000..effbe93 --- /dev/null +++ b/content/snaps.md @@ -0,0 +1,4 @@ +--- +type: redirect +redirect_to: https://gitforwindows.org/git-snapshots/ +--- diff --git a/content/snapshot-builds.md b/content/snapshot-builds.md index c17836b..1dc15e7 100644 --- a/content/snapshot-builds.md +++ b/content/snapshot-builds.md @@ -7,7 +7,7 @@ Git for Windows' `main` branch is kept in an always-releasable state as much as For example, in case that a critical bug is discovered that really needs to be fixed within the same day, Git for Windows does not have a maintenance branch (or, "stable" branch). Such a fix would be applied on top of `main` and a new version would be created from that state. -To allow users to help verifying that "always-releasable state", as well as to allow users to verify fixes introduced via PRs, Git for Windows builds "snapshot" releases (published [here](https://wingit.blob.core.windows.net/files/index.html)) whenever the `main` branch advances. +To allow users to help verifying that "always-releasable state", as well as to allow users to verify fixes introduced via PRs, Git for Windows builds "snapshot" releases (published [here](https://gitforwindows.org/git-snapshots/)) whenever the `main` branch advances. Those snapshot releases are considered robust. They are built using [the exact same Azure Pipeline](https://dev.azure.com/git-for-windows/git/_build?definitionId=34&_a=summary) that also builds official Git for Windows versions (as well as the `-rc` pre-releases leading up to every major version). Snapshot versions come in the same flavors as full Git for Windows versions: 32-bit and 64-bit, installers, portable Gits, MinGits. diff --git a/content/snapshots.md b/content/snapshots.md new file mode 100644 index 0000000..effbe93 --- /dev/null +++ b/content/snapshots.md @@ -0,0 +1,4 @@ +--- +type: redirect +redirect_to: https://gitforwindows.org/git-snapshots/ +--- diff --git a/layouts/redirect/single.html b/layouts/redirect/single.html new file mode 100644 index 0000000..52caf5c --- /dev/null +++ b/layouts/redirect/single.html @@ -0,0 +1,17 @@ + + + + + Redirecting… Git for Windows snapshots + + + + + + + + +

Redirecting…

+ Click here if you are not redirected. + +