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

Re: Best way to re-do a CVS repository with git?

From
Jakub Narebski <jnareb@gmail.com>
Date
Apr 19, 2008, 08:23 UTC
Message-ID
<m3wsmuqmmp.fsf@localhost.localdomain>
In-Reply-To
<2729632a0804161937w168aba8ahee742e182e50b4e7@mail.gmail.com>

I think the subject would better read: "What is best way to represent multimodule CVS repository in Git?"

skillzero@gmail.com writes:
Show 26 quoted lines
> I have a large CVS repository (1.5 GB without its history) that I'd
> like to convert to git, but I'm not sure about the right way to set it
> up. If I need to change the way I'm thinking about source code
> management, that's fine too, but here's what I have today in a single
> CVS repository:
> 
> MyProject
>    Apps                 # Only apps people use this.
>    Common               # Everyone uses this.
>    Firmware             # Only firmware people use this.
>    External/ProjectA    # Only app people use this.
>    External/ProjectB    # Everyone uses this.
>    External/ProjectC    # Only firmware people use this. This is 1 GB
> of code by itself.
> 
> I manage this today with CVS modules, one for apps people and one for
> firmware people (and another CVS module with everything for people
> like me that work on both).
> 
> I initially thought I'd create separate git repositories for each
> piece, but I'm not sure how that would work when it comes to tagging
> an entire release (i.e. a tag that spans multiple repositories). Or
> how it would handle a git repository within a directory managed by
> another git repository.
> 
> What's the best way to set up something like this with git?

I think that such setup would be best managed by creating Git repository for each piece, and "integration" repositories, one for apps people, and one for firmware people, using submodule support in Git.

Tagging entire release would be tagging in "integration" repository, the one using submodules.

See also:
 * http://git.or.cz/gitwiki/SubmoduleSupport
 * http://git.or.cz/gitwiki/GitSubmoduleTutorial
 * http://www.kernel.org/pub/software/scm/git/docs/git-submodule.html
   aka git-submodule(1)
-- 
Jakub Narebski
Poland
ShadeHawk on #git
Previous: skillzero@gmail.comNext: skillzero@gmail.com
Message 2 of 4 in “Best way to re-do a CVS repository with git?”
  1. skillzero@gmail.comApr 17, 2008
  2. Jakub NarebskiApr 19, 2008
  3. skillzero@gmail.comApr 19, 2008
  4. Jakub NarebskiApr 19, 2008

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.