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

Re: gitweb wishlist

From
Linus Torvalds <torvalds@osdl.org>
Date
May 24, 2005, 08:25 UTC
Message-ID
<Pine.LNX.4.58.0505240110580.2307@ppc970.osdl.org>
In-Reply-To
<Pine.LNX.4.58.0505232048190.2307@ppc970.osdl.org>
On Mon, 23 May 2005, Linus Torvalds wrote:
Show 6 quoted lines
> 
> I've gotten side-tracked with purely git issues, and since I don't 
> actually have any CVS archives, the cvs->git translation will be on the 
> back-burner for a while, but your "Ancestor branch" patch seems to at 
> least solve the problem that cvsps didn't show all the information that 
> was there.
Naff.

I just checked in a "cvs2git.c" file in the "tools" project (which has my patch application stuff).

It's still buggy, and it's hacky as hell, but you can basically do something like this:

	cvsps | cvs2git > script

with the normal setup for "cvsps", and "cvs2git" needs one additional stage, namely it wants to know the RCSDIR where to find the RCS files (that should be basically "$CVSROOT/module").

That _script_ then creates a git archive. Very hacky. So after you've successfully created the conversion script, check it to see that it looks sane, and then do

	sh script

and the end result is a git'ified version of your CVS repo (and a corrupted working directory, btw, so look out. It _shouldn't_ corrupt your old CVS repo, though, so it should be ok).

It has the logic for branches, but it doesn't work, and I'm fed up enough with CVS and RCS for the moment that I'm not going to work on it any more tonight. I don't know what stupid bug I have (I've had about a million of them on this silly program), but it's at a point where I think others might find it interesting, and it's probably/hopefully some really embarrassing typo or something and easily fixed.

It converted Peter's "syslinux" repository in a couple of minutes, resulting in 1038 commits (it _should_ have resulted in 1046 commits, that's the branch thing afaik) and most of it looks sane:

	diff-tree cfb715c827e19226a446d47c98a7460fd94633ff (from a809559323f1b370717e475dd252b24686f97727)
	Author: hpa <hpa>
	Date:   Thu May 19 22:30:50 2005 -0700
	    
	    gcc4 compilation fix
	
	
	diff-tree a809559323f1b370717e475dd252b24686f97727 (from 4d65331b50a7b5ce858bb55a58f37b17ebc26c72)
	Author: hpa <hpa>
	Date:   Sun May 8 22:47:03 2005 -0700
	    
	    New Multiboot module; increase command line limit to 1023
	
	
	diff-tree 4d65331b50a7b5ce858bb55a58f37b17ebc26c72 (from e88244753d528f695790adc96f0542d20dc33882)
	Author: hpa <hpa>
	Date:   Fri Apr 29 07:08:03 2005 -0700
	    
	    Don't clobber live registers, it's not nice
	
	
	diff-tree e88244753d528f695790adc96f0542d20dc33882 (from a49e189e35d208648a0d0b52ff652a5f3f8a707e)
	Author: hpa <hpa>
	Date:   Fri Apr 29 07:05:52 2005 -0700
	    
	    Use the correct register
	...
	...
	...
	diff-tree 350772d45425a85dae86ec721d6bd3fde5595d50 (from 47ee894e7821f50cb83ea14b08132337577b2a1e)
	Author: hpa <hpa>
	Date:   Sat Jan 31 13:24:35 1998 -0800
	    
	    Slightly less ugly Id tag.
	
	
	diff-tree 47ee894e7821f50cb83ea14b08132337577b2a1e (from a8b52f1c31055049b276d14c67436d06dd7757aa)
	Author: hpa <hpa>
	Date:   Sat Jan 31 13:22:38 1998 -0800
	    
	    Added Id tags.
	
	
	diff-tree b924672aadb2c3b7f3cac1aaf52fbb4a1ed86b8d (from root)
	Author: hpa <hpa>
	Date:   Sat Jan 31 13:16:05 1998 -0800
	    
	    Initial revision

And btw, it's definitely cvsps that does all the heavy lifting here. "cvs2git" itself is 255 lines of horrid crud, and should have been written in perl, except I only do C..

		Linus
Previous: Linus TorvaldsNext: Linus Torvalds
Message 45 of 102 in “gitweb wishlist”
  1. Petr BaudisMay 11, 2005
  2. YOSHIFUJI Hideaki / 吉藤英明May 11, 2005
  3. Petr BaudisMay 11, 2005
  4. Kay SieversMay 11, 2005
  5. Jan-Benedict GlawMay 11, 2005
  6. Kay SieversMay 14, 2005
  7. Junio C HamanoMay 12, 2005
  8. Kay SieversMay 12, 2005
  9. Junio C HamanoMay 12, 2005
  10. Junio C HamanoJun 4, 2005
  11. Jonas FonsecaMay 13, 2005
  12. Kay SieversMay 14, 2005
  13. Kay SieversMay 14, 2005
  14. Jonas FonsecaMay 14, 2005
  15. Kay SieversMay 18, 2005
  16. Petr BaudisMay 18, 2005
  17. Linus TorvaldsMay 20, 2005
  18. Junio C HamanoMay 20, 2005
  19. Linus TorvaldsMay 20, 2005
  20. Kay SieversMay 20, 2005
  21. Linus TorvaldsMay 20, 2005
  22. Linus TorvaldsMay 20, 2005
  23. Kay SieversMay 20, 2005
  24. Thomas GlanzmannMay 20, 2005
  25. Linus TorvaldsMay 20, 2005
  26. Linus TorvaldsMay 20, 2005
  27. H. Peter AnvinMay 20, 2005
  28. Linus TorvaldsMay 20, 2005
  29. H. Peter AnvinMay 20, 2005
  30. Thomas GlanzmannMay 20, 2005
  31. Kay SieversMay 20, 2005
  32. H. Peter AnvinMay 20, 2005
  33. Linus TorvaldsMay 20, 2005
  34. Kay SieversMay 20, 2005
  35. Kay SieversMay 20, 2005
  36. Matthias UrlichsMay 21, 2005
  37. Kay SieversMay 21, 2005
  38. Linus TorvaldsMay 21, 2005
  39. cvs->git (was Re: gitweb wishlist)Matthias Urlichs, May 21, 2005
  40. David MansfieldMay 24, 2005
  41. H. Peter AnvinMay 24, 2005
  42. David MansfieldMay 24, 2005
  43. H. Peter AnvinMay 24, 2005
  44. Linus TorvaldsMay 24, 2005
  45. Linus TorvaldsMay 24, 2005
  46. Linus TorvaldsMay 24, 2005
  47. Linus TorvaldsMay 24, 2005
  48. David MansfieldMay 24, 2005
  49. David MansfieldMay 24, 2005
  50. David MansfieldMay 24, 2005
  51. David MansfieldMay 24, 2005
  52. Linus TorvaldsMay 24, 2005
  53. H. Peter AnvinMay 24, 2005
  54. David MansfieldMay 24, 2005
  55. Thomas GlanzmannMay 24, 2005
  56. Linus TorvaldsMay 24, 2005
  57. Linus TorvaldsMay 24, 2005
  58. Linus TorvaldsMay 24, 2005
  59. Thomas GlanzmannMay 24, 2005
  60. Linus TorvaldsMay 24, 2005
  61. Edgar ToernigMay 24, 2005
  62. Linus TorvaldsMay 24, 2005
  63. Junio C HamanoMay 25, 2005
  64. Linus TorvaldsMay 25, 2005
  65. Junio C HamanoMay 25, 2005
  66. David MansfieldMay 24, 2005
  67. Thomas GlanzmannMay 24, 2005
  68. Linus TorvaldsMay 24, 2005
  69. Linus TorvaldsMay 24, 2005
  70. David MansfieldMay 24, 2005
  71. Linus TorvaldsMay 24, 2005
  72. Thomas GlanzmannMay 24, 2005
  73. Linus TorvaldsMay 24, 2005
  74. Thomas GlanzmannMay 24, 2005
  75. Linus TorvaldsMay 24, 2005
  76. David MansfieldMay 24, 2005
  77. Linus TorvaldsMay 24, 2005
  78. H. Peter AnvinMay 24, 2005
  79. Thomas GlanzmannMay 24, 2005
  80. Thomas GlanzmannMay 24, 2005
  81. Kay SieversMay 24, 2005
  82. Linus TorvaldsMay 24, 2005
  83. Junio C HamanoMay 25, 2005
  84. Linus TorvaldsMay 25, 2005
  85. Junio C HamanoMay 25, 2005
  86. Kay SieversMay 25, 2005
  87. David GreavesMay 25, 2005
  88. Junio C HamanoMay 25, 2005
  89. David GreavesMay 25, 2005
  90. Kay SieversMay 25, 2005
  91. Kay SieversMay 25, 2005
  92. Junio C HamanoMay 25, 2005
  93. Junio C HamanoMay 25, 2005
  94. Linus TorvaldsMay 24, 2005
  95. Thomas GlanzmannMay 24, 2005
  96. Linus TorvaldsMay 24, 2005
  97. Thomas GlanzmannMay 24, 2005
  98. Junio C HamanoMay 24, 2005
  99. Junio C HamanoMay 24, 2005
  100. Martin LanghoffMay 24, 2005
  101. Thomas GlanzmannMay 24, 2005
  102. David MansfieldMay 26, 2005

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.