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

Re: [PATCH] Documentation: reorganize cvs-migration.txt

From
JFJ. Bruce Fields <bfields@fieldses.org>
Date
Dec 7, 2006, 17:43 UTC
Message-ID
<20061207174306.GC16858@fieldses.org>
In-Reply-To
<Pine.LNX.4.63.0612071522080.28348@wbgn013.biozentrum.uni-wuerzburg.de>
On Thu, Dec 07, 2006 at 03:28:33PM +0100, Johannes Schindelin wrote:
> This is a laudable goal, and the order makes sense (put first that what 
> most people are interested in).
> 
> A few comments:

Thanks for the comments! Patch, incremental against the previous one, appended.

> - just skimming the patch, I found "commiting" (needs another "t"), and 
>   "-bare" (needs another "-").
Got it, thanks.
> - It might make more sense to "git init-db --shared" and fetch the initial 
>   revision into it, rather than clone it and then fix.

I do like the idea of anything that gets rid of the ugly find|xargs chmod. Result included below (untested). Is that what you were thinking of?

>   You might also want
>   to mention that the "--shared" of -clone is different in meaning from 
>   that of -init-db (make just a footnote of it, to avoid intimidating 
>   readers).

I'm ignoring this for now. We can add it later if someone says they've run into it. (But honestly it's partly just laziness on my part--no objection if you want to make the patch.)

It's too bad about that option-name conflict. It'd be nice just to be able to do the whole thing with one clone commandline. And it'd also make sense to allow clone and init-db to share commandline options where it made sense.

> - By far the easiest method to import from cvs is to go to a checked out
>   _CVS_ working directory, and just say "git cvsimport".

Neat, I didn't know about that. Done. I left the "-C" in there on the assumption they often won't want to drop the result into the CVS working directory.

Also did some miscellaneous cleanup.
--b.
commit 48ec79a74d0daa134b677ed5458beb873aa06e9a
Author: J. Bruce Fields <bfields@citi.umich.edu>
Date:   Thu Dec 7 12:38:09 2006 -0500
    Documentation: simpler shared repo creation, miscellaneous cleanup
    
    Create the shared repo with init-db --shared, fetch, and manual extraction
    of .git directory, instead of using clone --bare.
    
    Suggest running git-cvsimport from cvs working directory, more convenient
    thatn providing all the CVS information on the commandline.
    
    Fix a couple mispellings, add a couple manpage links.
    
    Thanks to Johannes Schindelin.
    
    Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
diff --git a/Documentation/cvs-migration.txt b/Documentation/cvs-migration.txt
index 773fc99..4fab0d7 100644
--- a/Documentation/cvs-migration.txt
+++ b/Documentation/cvs-migration.txt
@@ -43,8 +43,8 @@ Pull: refs/heads/master:refs/remotes/origin/master
 ------------
 ================================
 
-You can update the shared repository with your changes by first commiting
-your changes, and then using:
+You can update the shared repository with your changes by first committing
+your changes, and then using the gitlink:git-push[1] command:
 
 ------------------------------------------------
 $ git push origin master
@@ -76,11 +76,23 @@ possibly created from scratch or from a tarball (see the
 link:tutorial.html[tutorial]), or imported from an already existing CVS
 repository (see the next section).
 
-If your project's working directory is /home/alice/myproject, you can
-create a shared repository at /pub/repo.git with:
+Assume your existing repo is at /home/alice/myproject.  Create a temporary
+empty shared repository and fetch your project into it:
 
 ------------------------------------------------
-$ git clone -bare /home/alice/myproject /pub/repo.git
+$ mkdir /pub/temporary
+$ cd /pub/temporary
+$ git init-db --shared
+$ git fetch /home/alice/myproject master:master
+------------------------------------------------
+
+Then create a "bare" repository at /pub/repo.git by just moving the contents of
+the .git directory there.  The temporary repository can then be discarded.
+
+------------------------------------------------
+$ mv .git /pub/repo.git
+$ cd ..
+$ rm -rf temporary
 ------------------------------------------------
 
 Next, give every team member read/write access to this repository.  One
@@ -107,15 +119,15 @@ Importing a CVS archive
 
 First, install version 2.1 or higher of cvsps from
 link:http://www.cobite.com/cvsps/[http://www.cobite.com/cvsps/] and make
-sure it is in your path.  The magic command line is then
+sure it is in your path.  Then cd to a checked out CVS working directory
+of the project you are interested in and run gitlink:git-cvsimport[1]:
 
 -------------------------------------------
-$ git cvsimport -v -d <cvsroot> -C <destination> <module>
+$ git cvsimport -C <destination>
 -------------------------------------------
 
 This puts a git archive of the named CVS module in the directory
-<destination>, which will be created if necessary.  The -v option makes
-the conversion script very chatty.
+<destination>, which will be created if necessary.
 
 The import checks out from CVS every revision of every file.  Reportedly
Previous: Johannes SchindelinNext: Johannes Schindelin
Message 32 of 38 in “git newbie problems”
  1. Graham PercivalDec 6, 2006
  2. Jakub NarebskiDec 6, 2006
  3. Han-Wen NienhuysDec 6, 2006
  4. Jakub NarebskiDec 6, 2006
  5. Han-Wen NienhuysDec 6, 2006
  6. Johannes SchindelinDec 6, 2006
  7. Junio C HamanoDec 6, 2006
  8. Daniel BarkalowDec 6, 2006
  9. Tom PrinceDec 6, 2006
  10. Graham PercivalDec 6, 2006
  11. Han-Wen NienhuysDec 6, 2006
  12. Junio C HamanoDec 6, 2006
  13. Jakub NarebskiDec 6, 2006
  14. Han-Wen NienhuysDec 6, 2006
  15. cvs-migration document: make the need for "push" more obviousJohannes Schindelin, Dec 6, 2006
  16. Jakub NarebskiDec 6, 2006
  17. Johannes SchindelinDec 6, 2006
  18. Jakub NarebskiDec 6, 2006
  19. New users, was Re: [PATCH] cvs-migration document: make the need for "push" more obviousJohannes Schindelin, Dec 6, 2006
  20. J. Bruce FieldsDec 6, 2006
  21. Han-Wen NienhuysDec 6, 2006
  22. J. Bruce FieldsDec 6, 2006
  23. Han-Wen NienhuysDec 6, 2006
  24. Johannes SchindelinDec 6, 2006
  25. J. Bruce FieldsDec 6, 2006
  26. J. Bruce FieldsDec 6, 2006
  27. Junio C HamanoDec 6, 2006
  28. Documentation: reorganize cvs-migration.txtJ. Bruce Fields, Dec 7, 2006
  29. Junio C HamanoDec 7, 2006
  30. J. Bruce FieldsDec 7, 2006
  31. Johannes SchindelinDec 7, 2006
  32. J. Bruce FieldsDec 7, 2006
  33. Johannes SchindelinDec 7, 2006
  34. J. Bruce FieldsDec 8, 2006
  35. Junio C HamanoDec 8, 2006
  36. J. Bruce FieldsDec 9, 2006
  37. Graham PercivalDec 6, 2006
  38. J. Bruce FieldsDec 6, 2006

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.