git / git-scm.com

The git-scm.com website. Note that this repository is only for the website; issues with git itself should go to https://git-scm.com/community.
https://git-scm.com/
MIT License
2.17k stars 1.22k forks source link

The filter url in the GUI Clients section does not exist #1886

Closed SegoCode closed 3 hours ago

SegoCode commented 4 hours ago

URL for broken page

https://git-scm.com/download/guis?os=linux

Problem

When a filter is selected in https://git-scm.com/downloads/guis, the client's javascript replaces the browser url with one that does not exist, and on reloading the page returns a 404 HTTP.

Operating system and browser

Windows 11, Firefox 129.0.2 (64-bit)

Steps to reproduce

Step 1: Navigate to https://git-scm.com/downloads/guis Step 2: Select filter linux (Or other) Step 3: Reload page with F5 or in browser button

Actual result: 404 HTTP Expected result: 200 HTTP

Other details

I will open a pull request fixing the client's JS that overwrites the url when the filter is applied

dscho commented 4 hours ago

URL for broken page

https://git-scm.com/download/guis?os=linux

I confirm, this URL does not work, it should be https://git-scm.com/downloads/guis?os=linux instead.

Problem

When a filter is selected in https://git-scm.com/downloads/guis, the client's javascript replaces the browser url with one that does not exist, and on reloading the page returns a 404 HTTP.

Yep. The code in question is here.

Other details

I will open a pull request fixing the client's JS that overwrites the url when the filter is applied

Thank you!

Since the URLs have been produced, how about also adding a redirect via something like this?

diff --git a/content/downloads/guis/_index.html b/content/downloads/guis/_index.html
index 1429c7e91..819c2a463 100644
--- a/content/downloads/guis/_index.html
+++ b/content/downloads/guis/_index.html
@@ -5,6 +5,8 @@ title: "Git - GUI Clients"
 url: /downloads/guis.html
 aliases:
 - /downloads/guis/index.html
+- /download/guis/index.html
+- /download/guis.html
 ---

 <div id="main">