Re: [PATCH] Retire the `relink` command
Hi Eric, On Wed, 25 Jan 2017, Eric Wong wrote: > Johannes Schindelin wrote: > > Back in the olden days, when all objects were loose and rubber boots > > were made out of wood, it made sense to try to share (immutable) > > objects between repositories. > > > > Ever since the arrival of pack files, it is but an anachronism. > > > > Let's move the script to the contrib/examples/ directory and no longer > > offer it. > > On the other hand, we have no idea if there are still people > using it for whatever reason... > > I suggest we have a deprecation period where: I would be fine with a deprecation phase, but that decision is solely on Junio's shoulders. Ciao, Johannes
Re: [PATCH] Retire the `relink` command
Johannes Schindelin wrote: > Back in the olden days, when all objects were loose and rubber boots were > made out of wood, it made sense to try to share (immutable) objects > between repositories. > > Ever since the arrival of pack files, it is but an anachronism. > > Let's move the script to the contrib/examples/ directory and no longer > offer it. On the other hand, we have no idea if there are still people using it for whatever reason... I suggest we have a deprecation period where: 1) there is warning message when it's run 2) a note in the manpage indicating it's to-be-removed 3) ...then wait a few distro LTS cycles to remove it entirely
Re: [PATCH] Retire the `relink` command
Jeff King writes: > On Wed, Jan 25, 2017 at 05:58:57PM +0100, Johannes Schindelin wrote: > >> Back in the olden days, when all objects were loose and rubber boots were >> made out of wood, it made sense to try to share (immutable) objects >> between repositories. >> >> Ever since the arrival of pack files, it is but an anachronism. > > Yes, this is a good idea. I could _almost_ see its utility if it linked > packfiles, too, but then it is very unlikely that two repos have the > exact same packfile. > >> Let's move the script to the contrib/examples/ directory and no longer >> offer it. > > I am OK with this, but perhaps we should go even further and just delete > it entirely. The point of contrib/examples is to show people "this is > how you could script plumbing to implement a porcelain". But this script > does not call a single plumbing script. It just looks directly in > objects/, which is probably not something we would want to encourage. :) Yeah. I am OK with this patch as the first step of "first move to contrib and then remove" two step process, but I suspect we may forget to follow through.
Re: [PATCH] Retire the `relink` command
On Wed, Jan 25, 2017 at 05:58:57PM +0100, Johannes Schindelin wrote: > Back in the olden days, when all objects were loose and rubber boots were > made out of wood, it made sense to try to share (immutable) objects > between repositories. > > Ever since the arrival of pack files, it is but an anachronism. Yes, this is a good idea. I could _almost_ see its utility if it linked packfiles, too, but then it is very unlikely that two repos have the exact same packfile. > Let's move the script to the contrib/examples/ directory and no longer > offer it. I am OK with this, but perhaps we should go even further and just delete it entirely. The point of contrib/examples is to show people "this is how you could script plumbing to implement a porcelain". But this script does not call a single plumbing script. It just looks directly in objects/, which is probably not something we would want to encourage. :) -Peff
[PATCH] Retire the `relink` command
Back in the olden days, when all objects were loose and rubber boots were made out of wood, it made sense to try to share (immutable) objects between repositories. Ever since the arrival of pack files, it is but an anachronism. Let's move the script to the contrib/examples/ directory and no longer offer it. Signed-off-by: Johannes Schindelin --- Published-As: https://github.com/dscho/git/releases/tag/retire-relink-v1 Fetch-It-Via: git fetch https://github.com/dscho/git retire-relink-v1 .gitignore | 1 - Makefile| 1 - command-list.txt| 1 - git-relink.perl => contrib/examples/git-relink.perl | 0 {Documentation => contrib/examples}/git-relink.txt | 0 5 files changed, 3 deletions(-) rename git-relink.perl => contrib/examples/git-relink.perl (100%) rename {Documentation => contrib/examples}/git-relink.txt (100%) diff --git a/.gitignore b/.gitignore index 6722f78f9a..b1020b875f 100644 --- a/.gitignore +++ b/.gitignore @@ -118,7 +118,6 @@ /git-rebase--merge /git-receive-pack /git-reflog -/git-relink /git-remote /git-remote-http /git-remote-https diff --git a/Makefile b/Makefile index 27afd0f378..658ac19247 100644 --- a/Makefile +++ b/Makefile @@ -527,7 +527,6 @@ SCRIPT_PERL += git-archimport.perl SCRIPT_PERL += git-cvsexportcommit.perl SCRIPT_PERL += git-cvsimport.perl SCRIPT_PERL += git-cvsserver.perl -SCRIPT_PERL += git-relink.perl SCRIPT_PERL += git-send-email.perl SCRIPT_PERL += git-svn.perl diff --git a/command-list.txt b/command-list.txt index 2a94137bbb..a1fad28fd8 100644 --- a/command-list.txt +++ b/command-list.txt @@ -107,7 +107,6 @@ git-read-tree plumbingmanipulators git-rebase mainporcelain history git-receive-packsynchelpers git-reflog ancillarymanipulators -git-relink ancillarymanipulators git-remote ancillarymanipulators git-repack ancillarymanipulators git-replace ancillarymanipulators diff --git a/git-relink.perl b/contrib/examples/git-relink.perl similarity index 100% rename from git-relink.perl rename to contrib/examples/git-relink.perl diff --git a/Documentation/git-relink.txt b/contrib/examples/git-relink.txt similarity index 100% rename from Documentation/git-relink.txt rename to contrib/examples/git-relink.txt base-commit: 4e59582ff70d299f5a88449891e78d15b4b3fabe -- 2.11.1.windows.prerelease.2.3.g7f3eb74