Hi, back when Git was in its infancy, remotes were configured via separate files in "branches/" (back in 2005). This mechanism was replaced later that year with the "remotes/" directory. These mechanism have evenutally been replaced by config-based remotes, and it is very unlikely that anybody still uses these directories to configure their remotes. Both of these directories have been marked as deprecated, one in 2005 and the other one in 2011. This patch series follows through with the deprecation of these and announces them for removal in Git 3.0. Furthermore, it creates the infra to compile Git with such breaking changes enabled and wires up a CI job both for GitHub and GitLab to test those breaking changes. The series is based on top caacdb5dfd (The fifteenth batch, 2024-12-10) with ps/build at 904339edbd (Introduce support for the Meson build system, 2024-12-06) merged into it. Thanks! Patrick --- Patrick Steinhardt (5): Makefile: wire up build option for deprecated features ci: merge linux-gcc-default into linux-gcc ci: repurpose "linux-gcc" job for deprecations builtin/pack-redundant: remove subcommand with breaking changes remote: announce removal of "branches/" and "remotes/" .github/workflows/main.yml | 6 +---- .gitlab-ci.yml | 6 +---- Documentation/BreakingChanges.txt | 25 ++++++++++++++++++ Documentation/gitrepository-layout.txt | 7 +++-- GIT-BUILD-OPTIONS.in | 1 + Makefile | 7 +++++ builtin/remote.c | 2 ++ ci/lib.sh | 5 ---- ci/run-build-and-tests.sh | 3 ++- contrib/buildsystems/CMakeLists.txt | 1 + git.c | 2 ++ meson.build | 6 +++++ meson_options.txt | 2 ++ remote.c | 6 +++++ remote.h | 2 ++ t/t5323-pack-redundant.sh | 6 +++++ t/t5505-remote.sh | 6 ++--- t/t5510-fetch.sh | 13 ++++------ t/t5515-fetch-merge-logic.sh | 47 ++++++++++++++++++---------------- t/t5516-fetch-push.sh | 14 +++++----- t/test-lib.sh | 4 +++ 21 files changed, 112 insertions(+), 59 deletions(-) --- base-commit: 713ec79a9091cec60b110d605b418904759982ab change-id: 20241205-pks-remote-branches-deprecation-037a4389a377