git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Cleaning up "contrib/" (was: git svn clone failed)

From
Patrick Steinhardt <ps@pks.im>
Date
May 5, 2025, 09:44 UTC
Message-ID
<aBiIlDh0XAokwHZm@pks.im>
In-Reply-To
<5ffefc29-75ee-e278-448c-9124740d02fb@gmx.de>
On Mon, May 05, 2025 at 09:36:06AM +0200, Johannes Schindelin wrote:
Show 33 quoted lines
> Hi Patrick,
> 
> On Mon, 5 May 2025, Patrick Steinhardt wrote:
> 
> > On Sun, May 04, 2025 at 10:19:06AM +0200, Johannes Schindelin wrote:
> > > 
> > > On Fri, 2 May 2025, BERENDSEN Arnoud wrote:
> > > 
> > > > [... talks about `git svn` not working in Git for Windows ...]
> > > 
> > > In Git for Windows, `git svn` is quite a maintenance burden [... then
> > > suggests to use Windows System for Linux (WSL) as a workaround ...].
> > 
> > I sometimes wonder whether we should move such basically-unmaintained
> > scripts out of the Git repository. They do a disservice to both us and
> > to our users as they create the wrong impression of being the sanctioned
> > way of doing a particular task even though they have only been gathering
> > dust for ages.
> > 
> > Many of the tools in "contrib/" fall into this category, and to the best
> > of my knowledge there isn't really a clear strategy for that directory.
> > So from my perspective, we should either rethink whether it is worth it
> > to have "contrib/" as part of Git, or we should at least do a spring
> > cleanup and drop bits that haven't seen any love in the last couple of
> > years.
> 
> While I am thoroughly sympathetic to the idea of cleaning up `contrib/`
> (which is a mixture of things that are quite well supported, such as the
> Bash tab completion script, and of things that are the opposite of
> maintained, such as `contrib/workdir/` that should have been dropped a
> long time ago since it encourages relying on Git's internals and has been
> superseded by `git worktree`), I cannot fail to notice that `git-svn`
> isn't even in `contrib/`.
Oh, right you are!
Show 7 quoted lines
> Instead, `git-svn` is in the same category as `git-archimport`,
> `git-cvsserver`, `git-cvsexportcommit` and `git-cvsimport`, i.e. Git
> commands that tried to facilitate transitioning from specific version
> control systems that had been a lot more common than Git at the time, but
> no longer are. Maybe `git-svn` is not quite as obsolete as the other
> commands in that category, but they are all merely dust collectors in
> Git's codebase.
Fully agreed.
Patrick
Previous: Johannes SchindelinNext: Junio C Hamano
Message 5 of 13 in “git svn clone failed”
  1. BERENDSEN ArnoudMay 2, 2025
  2. Johannes SchindelinMay 4, 2025
  3. Cleaning up "contrib/" (was: git svn clone failed)Patrick Steinhardt, May 5, 2025
  4. Johannes SchindelinMay 5, 2025
  5. Patrick SteinhardtMay 5, 2025
  6. Junio C HamanoMay 5, 2025
  7. Patrick SteinhardtMay 6, 2025
  8. Jeff KingMay 12, 2025
  9. brian m. carlsonMay 13, 2025
  10. Patrick SteinhardtMay 13, 2025
  11. Junio C HamanoMay 13, 2025
  12. Jeff KingMay 14, 2025
  13. Junio C HamanoMay 14, 2025

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.