git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
* [PATCH 00/11] Start retiring .git/remotes/ and .git/branches/ for good
@ 2017-05-11 13:47 Johannes Schindelin
  2017-05-11 13:47 ` [PATCH 01/11] git-parse-remote: fix highly misleading man page Johannes Schindelin
                   ` (12 more replies)
  0 siblings, 13 replies; 62+ messages in thread
From: Johannes Schindelin @ 2017-05-11 13:47 UTC (permalink / raw)
  To: git; +Cc: Junio C Hamano

Git uses the config for remote/upstream information in favor of the
previously-used .git/remotes/ and .git/branches/ for a decade now.

Nothing in Git writes to these files any longer, and the most prominent
user of .git/branches/ (Cogito) is long abandoned.

It is time to start not only deprecating this feature, but *really*
deprecating it. Like, really, *really*. For reals.

Half of this patch series does that.

The second half is a preview of the patches to finally rip out the code
that implements .git/remotes/ & .git/branches/ support. We we will want
to apply them to a future major version of Git, after *really*
deprecating .git/remotes/ & .git/branches/ support for at least one
major version (I would be more comfortable with three major versions,
actually).

Note: even after these patches, there is still a file mentioning
.git/remote/ (sic!) and .git/branches/:
Documentation/git-show-branch.txt. The reference is not, however,
describing Git's internals, but merely uses existing commit history
(from the olden days) in an example.

There is also a reference in contrib/examples/git-fetch.sh, but that
should remain there, for historians' purposes.

Oh, and the reason that I split out the changes to t5505, t5510, t5515 &
t5516 in the PREVIEW part is that those changes are unfortunately not
quite as trivial as I hoped, and require a bit of a rationale for the
way they were performed in the commit message. Read: I wanted to make
this patch series easier to review. And as I already split out all the
t/ patches, it felt silly to *not* split out the t0060 patch.


Johannes Schindelin (11):
  git-parse-remote: fix highly misleading man page
  Documentation: really deprecate .git/remotes/ and .git/branches/
  remote: warn loud and clear when .git/branches/ is *still* used
  remote: warn loud and clear when .git/remotes/ is *still* used
  Revert "Revert "Don't create the $GIT_DIR/branches directory on init""
  PREVIEW: t5510: convert .git/remotes/ test to use a regular remote
  PREVIEW: t5516: stop testing .git/branches/ functionality
  PREVIEW: remote: remove support for migrating ancient remotes
  PREVIEW: t5515: remove .git/remotes/ and .git/branches/ tests
  PREVIEW: t0060: stop testing support for .git/remotes/ and
    .git/branches/
  PREVIEW: remove support for .git/remotes/ and .git/branches/

 Documentation/git-parse-remote.txt                 |  7 +-
 Documentation/git-remote.txt                       |  4 -
 Documentation/gitrepository-layout.txt             | 19 +++--
 Documentation/urls-remotes.txt                     | 65 +---------------
 builtin/remote.c                                   | 27 -------
 path.c                                             |  2 -
 remote.c                                           | 89 ----------------------
 remote.h                                           |  4 +-
 t/t0060-path-utils.sh                              |  2 -
 t/t5505-remote.sh                                  | 55 -------------
 t/t5510-fetch.sh                                   | 10 +--
 t/t5515-fetch-merge-logic.sh                       | 23 ------
 t/t5515/fetch.br-branches-default                  |  8 --
 t/t5515/fetch.br-branches-default-merge            |  9 ---
 ...etch.br-branches-default-merge_branches-default |  9 ---
 t/t5515/fetch.br-branches-default-octopus          | 10 ---
 ...ch.br-branches-default-octopus_branches-default | 10 ---
 t/t5515/fetch.br-branches-default_branches-default |  8 --
 t/t5515/fetch.br-branches-one                      |  8 --
 t/t5515/fetch.br-branches-one-merge                |  9 ---
 t/t5515/fetch.br-branches-one-merge_branches-one   |  9 ---
 t/t5515/fetch.br-branches-one-octopus              |  9 ---
 t/t5515/fetch.br-branches-one-octopus_branches-one |  9 ---
 t/t5515/fetch.br-branches-one_branches-one         |  8 --
 t/t5515/fetch.br-remote-explicit                   | 11 ---
 t/t5515/fetch.br-remote-explicit-merge             | 11 ---
 .../fetch.br-remote-explicit-merge_remote-explicit | 11 ---
 t/t5515/fetch.br-remote-explicit-octopus           | 11 ---
 ...etch.br-remote-explicit-octopus_remote-explicit | 11 ---
 t/t5515/fetch.br-remote-explicit_remote-explicit   | 11 ---
 t/t5515/fetch.br-remote-glob                       | 11 ---
 t/t5515/fetch.br-remote-glob-merge                 | 11 ---
 t/t5515/fetch.br-remote-glob-merge_remote-glob     | 11 ---
 t/t5515/fetch.br-remote-glob-octopus               | 11 ---
 t/t5515/fetch.br-remote-glob-octopus_remote-glob   | 11 ---
 t/t5515/fetch.br-remote-glob_remote-glob           | 11 ---
 t/t5515/fetch.br-unconfig_branches-default         |  8 --
 t/t5515/fetch.br-unconfig_branches-one             |  8 --
 t/t5515/fetch.br-unconfig_remote-explicit          | 11 ---
 t/t5515/fetch.br-unconfig_remote-glob              | 11 ---
 t/t5515/fetch.master_branches-default              |  8 --
 t/t5515/fetch.master_branches-one                  |  8 --
 t/t5515/fetch.master_remote-explicit               | 11 ---
 t/t5515/fetch.master_remote-glob                   | 11 ---
 t/t5515/refs.br-branches-default                   | 12 ---
 t/t5515/refs.br-branches-default-merge             | 12 ---
 ...refs.br-branches-default-merge_branches-default | 12 ---
 t/t5515/refs.br-branches-default-octopus           | 12 ---
 ...fs.br-branches-default-octopus_branches-default | 12 ---
 t/t5515/refs.br-branches-default_branches-default  | 12 ---
 t/t5515/refs.br-branches-one                       | 12 ---
 t/t5515/refs.br-branches-one-merge                 | 12 ---
 t/t5515/refs.br-branches-one-merge_branches-one    | 12 ---
 t/t5515/refs.br-branches-one-octopus               | 12 ---
 t/t5515/refs.br-branches-one-octopus_branches-one  | 12 ---
 t/t5515/refs.br-branches-one_branches-one          | 12 ---
 t/t5515/refs.br-remote-explicit                    | 15 ----
 t/t5515/refs.br-remote-explicit-merge              | 15 ----
 .../refs.br-remote-explicit-merge_remote-explicit  | 15 ----
 t/t5515/refs.br-remote-explicit-octopus            | 15 ----
 ...refs.br-remote-explicit-octopus_remote-explicit | 15 ----
 t/t5515/refs.br-remote-explicit_remote-explicit    | 15 ----
 t/t5515/refs.br-remote-glob                        | 15 ----
 t/t5515/refs.br-remote-glob-merge                  | 15 ----
 t/t5515/refs.br-remote-glob-merge_remote-glob      | 15 ----
 t/t5515/refs.br-remote-glob-octopus                | 15 ----
 t/t5515/refs.br-remote-glob-octopus_remote-glob    | 15 ----
 t/t5515/refs.br-remote-glob_remote-glob            | 15 ----
 t/t5515/refs.br-unconfig_branches-default          | 12 ---
 t/t5515/refs.br-unconfig_branches-one              | 12 ---
 t/t5515/refs.br-unconfig_remote-explicit           | 15 ----
 t/t5515/refs.br-unconfig_remote-glob               | 15 ----
 t/t5515/refs.master_branches-default               | 12 ---
 t/t5515/refs.master_branches-one                   | 12 ---
 t/t5515/refs.master_remote-explicit                | 15 ----
 t/t5515/refs.master_remote-glob                    | 15 ----
 t/t5516-fetch-push.sh                              | 55 +------------
 templates/branches--                               |  1 -
 78 files changed, 20 insertions(+), 1089 deletions(-)
 delete mode 100644 t/t5515/fetch.br-branches-default
 delete mode 100644 t/t5515/fetch.br-branches-default-merge
 delete mode 100644 t/t5515/fetch.br-branches-default-merge_branches-default
 delete mode 100644 t/t5515/fetch.br-branches-default-octopus
 delete mode 100644 t/t5515/fetch.br-branches-default-octopus_branches-default
 delete mode 100644 t/t5515/fetch.br-branches-default_branches-default
 delete mode 100644 t/t5515/fetch.br-branches-one
 delete mode 100644 t/t5515/fetch.br-branches-one-merge
 delete mode 100644 t/t5515/fetch.br-branches-one-merge_branches-one
 delete mode 100644 t/t5515/fetch.br-branches-one-octopus
 delete mode 100644 t/t5515/fetch.br-branches-one-octopus_branches-one
 delete mode 100644 t/t5515/fetch.br-branches-one_branches-one
 delete mode 100644 t/t5515/fetch.br-remote-explicit
 delete mode 100644 t/t5515/fetch.br-remote-explicit-merge
 delete mode 100644 t/t5515/fetch.br-remote-explicit-merge_remote-explicit
 delete mode 100644 t/t5515/fetch.br-remote-explicit-octopus
 delete mode 100644 t/t5515/fetch.br-remote-explicit-octopus_remote-explicit
 delete mode 100644 t/t5515/fetch.br-remote-explicit_remote-explicit
 delete mode 100644 t/t5515/fetch.br-remote-glob
 delete mode 100644 t/t5515/fetch.br-remote-glob-merge
 delete mode 100644 t/t5515/fetch.br-remote-glob-merge_remote-glob
 delete mode 100644 t/t5515/fetch.br-remote-glob-octopus
 delete mode 100644 t/t5515/fetch.br-remote-glob-octopus_remote-glob
 delete mode 100644 t/t5515/fetch.br-remote-glob_remote-glob
 delete mode 100644 t/t5515/fetch.br-unconfig_branches-default
 delete mode 100644 t/t5515/fetch.br-unconfig_branches-one
 delete mode 100644 t/t5515/fetch.br-unconfig_remote-explicit
 delete mode 100644 t/t5515/fetch.br-unconfig_remote-glob
 delete mode 100644 t/t5515/fetch.master_branches-default
 delete mode 100644 t/t5515/fetch.master_branches-one
 delete mode 100644 t/t5515/fetch.master_remote-explicit
 delete mode 100644 t/t5515/fetch.master_remote-glob
 delete mode 100644 t/t5515/refs.br-branches-default
 delete mode 100644 t/t5515/refs.br-branches-default-merge
 delete mode 100644 t/t5515/refs.br-branches-default-merge_branches-default
 delete mode 100644 t/t5515/refs.br-branches-default-octopus
 delete mode 100644 t/t5515/refs.br-branches-default-octopus_branches-default
 delete mode 100644 t/t5515/refs.br-branches-default_branches-default
 delete mode 100644 t/t5515/refs.br-branches-one
 delete mode 100644 t/t5515/refs.br-branches-one-merge
 delete mode 100644 t/t5515/refs.br-branches-one-merge_branches-one
 delete mode 100644 t/t5515/refs.br-branches-one-octopus
 delete mode 100644 t/t5515/refs.br-branches-one-octopus_branches-one
 delete mode 100644 t/t5515/refs.br-branches-one_branches-one
 delete mode 100644 t/t5515/refs.br-remote-explicit
 delete mode 100644 t/t5515/refs.br-remote-explicit-merge
 delete mode 100644 t/t5515/refs.br-remote-explicit-merge_remote-explicit
 delete mode 100644 t/t5515/refs.br-remote-explicit-octopus
 delete mode 100644 t/t5515/refs.br-remote-explicit-octopus_remote-explicit
 delete mode 100644 t/t5515/refs.br-remote-explicit_remote-explicit
 delete mode 100644 t/t5515/refs.br-remote-glob
 delete mode 100644 t/t5515/refs.br-remote-glob-merge
 delete mode 100644 t/t5515/refs.br-remote-glob-merge_remote-glob
 delete mode 100644 t/t5515/refs.br-remote-glob-octopus
 delete mode 100644 t/t5515/refs.br-remote-glob-octopus_remote-glob
 delete mode 100644 t/t5515/refs.br-remote-glob_remote-glob
 delete mode 100644 t/t5515/refs.br-unconfig_branches-default
 delete mode 100644 t/t5515/refs.br-unconfig_branches-one
 delete mode 100644 t/t5515/refs.br-unconfig_remote-explicit
 delete mode 100644 t/t5515/refs.br-unconfig_remote-glob
 delete mode 100644 t/t5515/refs.master_branches-default
 delete mode 100644 t/t5515/refs.master_branches-one
 delete mode 100644 t/t5515/refs.master_remote-explicit
 delete mode 100644 t/t5515/refs.master_remote-glob
 delete mode 100644 templates/branches--


base-commit: b06d3643105c8758ed019125a4399cb7efdcce2c
Published-As: https://github.com/dscho/git/releases/tag/retire-cogito-branches-v1
Fetch-It-Via: git fetch https://github.com/dscho/git retire-cogito-branches-v1

-- 
2.12.2.windows.2.800.gede8f145e06


^ permalink raw reply	[flat|nested] 62+ messages in thread

end of thread, other threads:[~2020-11-17 14:27 UTC | newest]

Thread overview: 62+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-05-11 13:47 [PATCH 00/11] Start retiring .git/remotes/ and .git/branches/ for good Johannes Schindelin
2017-05-11 13:47 ` [PATCH 01/11] git-parse-remote: fix highly misleading man page Johannes Schindelin
2017-05-11 17:21   ` Stefan Beller
2017-05-11 19:14     ` Johannes Schindelin
2020-11-11 15:17     ` [PATCH 0/5] Remove now-unused git-parse-remote Ævar Arnfjörð Bjarmason
2020-11-11 17:37       ` Jeff King
2020-11-11 19:29         ` Junio C Hamano
2020-11-12 14:09         ` Ævar Arnfjörð Bjarmason
2020-11-12 18:42           ` Jeff King
2020-11-12 14:19       ` How do I "git fetch" with a custom <refspec> but a default remote? Ævar Arnfjörð Bjarmason
2020-11-12 18:51         ` Jeff King
2020-11-12 19:26           ` Chris Torek
2020-11-12 20:48             ` Jeff King
2020-11-12 21:22               ` Junio C Hamano
2020-11-14 12:12         ` Ævar Arnfjörð Bjarmason
2020-11-11 15:17     ` [PATCH 1/5] parse-remote: remove unused GIT_DIR variable Ævar Arnfjörð Bjarmason
2020-11-11 15:17     ` [PATCH 2/5] parse-remote: remove long-dead rebase code Ævar Arnfjörð Bjarmason
2020-11-11 15:17     ` [PATCH 3/5] parse-remote: remove long-dead git-pull.sh code Ævar Arnfjörð Bjarmason
2020-11-11 15:17     ` [PATCH 4/5] parse-remote: move used code to git-submodule.sh Ævar Arnfjörð Bjarmason
2020-11-11 15:17     ` [PATCH 5/5] parse-remote: remove this now-unused library Ævar Arnfjörð Bjarmason
2020-11-11 16:33       ` Junio C Hamano
2020-11-12 20:31         ` [PATCH v2 0/2] Retire git-parse-remote Junio C Hamano
2020-11-12 20:31           ` [PATCH v2 1/2] parse-remote: move used code to git-submodule.sh Junio C Hamano
2020-11-12 20:31           ` [PATCH v2 2/2] parse-remote: remove this now-unused library Junio C Hamano
2020-11-12 20:49           ` [PATCH v2 0/2] Retire git-parse-remote Jeff King
2020-11-12 21:25             ` Junio C Hamano
2020-11-13  9:42           ` Ævar Arnfjörð Bjarmason
2020-11-14 12:21           ` [PATCH v3 0/3] submodule sh->C & retire parse-remote Ævar Arnfjörð Bjarmason
2020-11-14 12:21           ` [PATCH v3 1/3] submodule: use "fetch" logic instead of custom remote discovery Ævar Arnfjörð Bjarmason
2020-11-16 21:13             ` Junio C Hamano
2020-11-14 12:21           ` [PATCH v3 2/3] submodule: remove sh function in favor of helper Ævar Arnfjörð Bjarmason
2020-11-14 12:21           ` [PATCH v3 3/3] parse-remote: remove this now-unused library Ævar Arnfjörð Bjarmason
2020-11-16 21:19             ` Junio C Hamano
2020-11-17 14:24               ` Ævar Arnfjörð Bjarmason
2017-05-11 13:47 ` [PATCH 02/11] Documentation: really deprecate .git/remotes/ and .git/branches/ Johannes Schindelin
2017-05-11 13:47 ` [PATCH 03/11] remote: warn loud and clear when .git/branches/ is *still* used Johannes Schindelin
2017-05-11 13:47 ` [PATCH 04/11] remote: warn loud and clear when .git/remotes/ " Johannes Schindelin
2017-05-11 13:47 ` [PATCH 05/11] Revert "Revert "Don't create the $GIT_DIR/branches directory on init"" Johannes Schindelin
2017-05-11 17:26   ` Stefan Beller
2017-05-11 13:47 ` [PATCH 06/11] PREVIEW: t5510: convert .git/remotes/ test to use a regular remote Johannes Schindelin
2017-05-11 13:47 ` [PATCH 07/11] PREVIEW: t5516: stop testing .git/branches/ functionality Johannes Schindelin
2017-05-11 13:47 ` [PATCH 08/11] PREVIEW: remote: remove support for migrating ancient remotes Johannes Schindelin
2017-05-11 13:48 ` [PATCH 09/11] PREVIEW: t5515: remove .git/remotes/ and .git/branches/ tests Johannes Schindelin
2017-05-11 13:48 ` [PATCH 10/11] PREVIEW: t0060: stop testing support for .git/remotes/ and .git/branches/ Johannes Schindelin
2017-05-11 13:48 ` [PATCH 11/11] PREVIEW: remove " Johannes Schindelin
2017-05-11 18:19   ` Stefan Beller
2017-05-11 19:19     ` Johannes Schindelin
2017-05-12  1:14 ` [PATCH 00/11] Start retiring .git/remotes/ and .git/branches/ for good Junio C Hamano
2017-05-12 10:18   ` Johannes Schindelin
2017-05-16  0:37     ` Junio C Hamano
2017-05-16  8:05       ` Ævar Arnfjörð Bjarmason
2017-05-16  9:06         ` Junio C Hamano
2017-05-16 10:02           ` Ævar Arnfjörð Bjarmason
2017-05-17  0:51             ` Junio C Hamano
2017-05-12 12:00   ` Junio C Hamano
2017-05-12 14:19     ` Johannes Schindelin
2017-05-12 17:38       ` Jonathan Nieder
2017-05-13 10:13         ` Junio C Hamano
2017-05-12 21:11       ` Junio C Hamano
2017-05-15  8:42         ` Johannes Schindelin
2017-05-12  9:11 ` Jeff King
2017-05-12 11:09   ` Johannes Schindelin

Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).