{"thread":{"id":"44969","subject":"[PATCH] Retire the `relink` command","startedAt":"2017-01-25T16:59:11Z","lastAt":"2017-01-26T12:18:12Z","messageCount":5,"participants":["Johannes Schindelin","Jeff King","Junio C Hamano","Eric Wong"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"310163","messageId":"10319c47ff3f7222c3a601827ebd9398861d509d.1485363528.git.johannes.schindelin@gmx.de","threadId":"44969","inReplyTo":null,"subject":"[PATCH] Retire the `relink` command","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2017-01-25T16:58:57Z","receivedAt":"2017-01-25T16:59:11Z","isPatch":true,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Back in the olden days, when all objects were loose and rubber boots were\nmade out of wood, it made sense to try to share (immutable) objects\nbetween repositories.\n\nEver since the arrival of pack files, it is but an anachronism.\n\nLet's move the script to the contrib/examples/ directory and no longer\noffer it.\n\nSigned-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>\n---\nPublished-As: https://github.com/dscho/git/releases/tag/retire-relink-v1\nFetch-It-Via: git fetch https://github.com/dscho/git retire-relink-v1\n\n .gitignore                                          | 1 -\n Makefile                                            | 1 -\n command-list.txt                                    | 1 -\n git-relink.perl => contrib/examples/git-relink.perl | 0\n {Documentation => contrib/examples}/git-relink.txt  | 0\n 5 files changed, 3 deletions(-)\n rename git-relink.perl => contrib/examples/git-relink.perl (100%)\n rename {Documentation => contrib/examples}/git-relink.txt (100%)\n\ndiff --git a/.gitignore b/.gitignore\nindex 6722f78f9a..b1020b875f 100644\n--- a/.gitignore\n+++ b/.gitignore\n@@ -118,7 +118,6 @@\n /git-rebase--merge\n /git-receive-pack\n /git-reflog\n-/git-relink\n /git-remote\n /git-remote-http\n /git-remote-https\ndiff --git a/Makefile b/Makefile\nindex 27afd0f378..658ac19247 100644\n--- a/Makefile\n+++ b/Makefile\n@@ -527,7 +527,6 @@ SCRIPT_PERL += git-archimport.perl\n SCRIPT_PERL += git-cvsexportcommit.perl\n SCRIPT_PERL += git-cvsimport.perl\n SCRIPT_PERL += git-cvsserver.perl\n-SCRIPT_PERL += git-relink.perl\n SCRIPT_PERL += git-send-email.perl\n SCRIPT_PERL += git-svn.perl\n \ndiff --git a/command-list.txt b/command-list.txt\nindex 2a94137bbb..a1fad28fd8 100644\n--- a/command-list.txt\n+++ b/command-list.txt\n@@ -107,7 +107,6 @@ git-read-tree                           plumbingmanipulators\n git-rebase                              mainporcelain           history\n git-receive-pack                        synchelpers\n git-reflog                              ancillarymanipulators\n-git-relink                              ancillarymanipulators\n git-remote                              ancillarymanipulators\n git-repack                              ancillarymanipulators\n git-replace                             ancillarymanipulators\ndiff --git a/git-relink.perl b/contrib/examples/git-relink.perl\nsimilarity index 100%\nrename from git-relink.perl\nrename to contrib/examples/git-relink.perl\ndiff --git a/Documentation/git-relink.txt b/contrib/examples/git-relink.txt\nsimilarity index 100%\nrename from Documentation/git-relink.txt\nrename to contrib/examples/git-relink.txt\n\nbase-commit: 4e59582ff70d299f5a88449891e78d15b4b3fabe\n-- \n2.11.1.windows.prerelease.2.3.g7f3eb74\n"},{"id":"310204","messageId":"20170125211331.ts4ohigz5z6ugj6q@sigill.intra.peff.net","threadId":"44969","inReplyTo":"10319c47ff3f7222c3a601827ebd9398861d509d.1485363528.git.johannes.schindelin@gmx.de","subject":"Re: [PATCH] Retire the `relink` command","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2017-01-25T21:13:31Z","receivedAt":"2017-01-25T21:13:37Z","isPatch":true,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Wed, Jan 25, 2017 at 05:58:57PM +0100, Johannes Schindelin wrote:\n\n> Back in the olden days, when all objects were loose and rubber boots were\n> made out of wood, it made sense to try to share (immutable) objects\n> between repositories.\n> \n> Ever since the arrival of pack files, it is but an anachronism.\n\nYes, this is a good idea. I could _almost_ see its utility if it linked\npackfiles, too, but then it is very unlikely that two repos have the\nexact same packfile.\n\n> Let's move the script to the contrib/examples/ directory and no longer\n> offer it.\n\nI am OK with this, but perhaps we should go even further and just delete\nit entirely. The point of contrib/examples is to show people \"this is\nhow you could script plumbing to implement a porcelain\". But this script\ndoes not call a single plumbing script. It just looks directly in\nobjects/, which is probably not something we would want to encourage. :)\n\n-Peff\n"},{"id":"310217","messageId":"xmqqtw8m95sj.fsf@gitster.mtv.corp.google.com","threadId":"44969","inReplyTo":"20170125211331.ts4ohigz5z6ugj6q@sigill.intra.peff.net","subject":"Re: [PATCH] Retire the `relink` command","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2017-01-25T21:41:00Z","receivedAt":"2017-01-25T21:41:08Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jeff King <peff@peff.net> writes:\n\n> On Wed, Jan 25, 2017 at 05:58:57PM +0100, Johannes Schindelin wrote:\n>\n>> Back in the olden days, when all objects were loose and rubber boots were\n>> made out of wood, it made sense to try to share (immutable) objects\n>> between repositories.\n>> \n>> Ever since the arrival of pack files, it is but an anachronism.\n>\n> Yes, this is a good idea. I could _almost_ see its utility if it linked\n> packfiles, too, but then it is very unlikely that two repos have the\n> exact same packfile.\n>\n>> Let's move the script to the contrib/examples/ directory and no longer\n>> offer it.\n>\n> I am OK with this, but perhaps we should go even further and just delete\n> it entirely. The point of contrib/examples is to show people \"this is\n> how you could script plumbing to implement a porcelain\". But this script\n> does not call a single plumbing script. It just looks directly in\n> objects/, which is probably not something we would want to encourage. :)\n\nYeah.  I am OK with this patch as the first step of \"first move to\ncontrib and then remove\" two step process, but I suspect we may\nforget to follow through.\n"},{"id":"310259","messageId":"20170125232051.GA25810@whir","threadId":"44969","inReplyTo":"10319c47ff3f7222c3a601827ebd9398861d509d.1485363528.git.johannes.schindelin@gmx.de","subject":"Re: [PATCH] Retire the `relink` command","fromName":"Eric Wong","fromEmail":"e@80x24.org","sentAt":"2017-01-25T23:20:51Z","receivedAt":"2017-01-25T23:20:56Z","isPatch":true,"sender":{"key":"e@80x24.org","avatar":null},"body":"Johannes Schindelin <johannes.schindelin@gmx.de> wrote:\n> Back in the olden days, when all objects were loose and rubber boots were\n> made out of wood, it made sense to try to share (immutable) objects\n> between repositories.\n> \n> Ever since the arrival of pack files, it is but an anachronism.\n> \n> Let's move the script to the contrib/examples/ directory and no longer\n> offer it.\n\nOn the other hand, we have no idea if there are still people\nusing it for whatever reason...\n\nI suggest we have a deprecation period where:\n\n1) there is warning message when it's run\n2) a note in the manpage indicating it's to-be-removed\n3) ...then wait a few distro LTS cycles to remove it entirely\n"},{"id":"310308","messageId":"alpine.DEB.2.20.1701261317250.3469@virtualbox","threadId":"44969","inReplyTo":"20170125232051.GA25810@whir","subject":"Re: [PATCH] Retire the `relink` command","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2017-01-26T12:17:57Z","receivedAt":"2017-01-26T12:18:12Z","isPatch":true,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi Eric,\n\nOn Wed, 25 Jan 2017, Eric Wong wrote:\n\n> Johannes Schindelin <johannes.schindelin@gmx.de> wrote:\n> > Back in the olden days, when all objects were loose and rubber boots\n> > were made out of wood, it made sense to try to share (immutable)\n> > objects between repositories.\n> > \n> > Ever since the arrival of pack files, it is but an anachronism.\n> > \n> > Let's move the script to the contrib/examples/ directory and no longer\n> > offer it.\n> \n> On the other hand, we have no idea if there are still people\n> using it for whatever reason...\n> \n> I suggest we have a deprecation period where:\n\nI would be fine with a deprecation phase, but that decision is solely on\nJunio's shoulders.\n\nCiao,\nJohannes\n"}]}