Just a few things that need to be discussed when switching from SVN to Git…

Some facts about our SVN repo

The repository-in-question is quite large (more than 100.000 revisions, about 20 (Eclipse) projects, about 10 different trunks (some projects are combined under a common trunk, some porjects have their own trunk).
The resulting applications (EARs and WARs, as well as stanalone Java applications; about 10 alltogether) are always versioned and released together (which means that there should really be only one trunk…)

Q1: Repository Layout

  1. All projects in one repo?
    are there performance issues with large repos?
  2. Each project in its own repo?
    • one commit across multiple repos possible?
    • how to track files that have been moved between projects? (we have frequent refactorings)
    • how to check out the whole app for a given point of time?
  3. A mixture of 1. and 2.?
    • which projects should belong together?
    • this leads to a nested project structure - how can eclipse/ant deal with this?