Thanks for the effort Mark and Dave, I think this will be a great step
forward.
I agree that we should leave the deprecated stuff in SVN and just let
it die a natural death. If someone wants it for an old project, at
least they'll still be able to find it where they expected it to be.
This includes the old astro library, mlib devel 7.1, 8.2 and 9.2
(these latter two were never finished/tested, AFAIK and should
probably not be in there at all - it just causes confusion).
I also like the idea of splitting each project into its own repo.
This /trunk/projects tree has become impossible to navigate and the
project files are mostly useless to others without a readme or guide.
Perhaps these are better suited to the wiki, especially if it's an old
static project. But either way, I agree that it should not be housed
together with the toolflow stuff.
It makes sense for board-specific stuff to live in separate repos. The
ROACH repo should contain everything from the current /trunk/roach
directory, keeping the structure as-is. If there is some way to port
SVN to GIT so that we keep all the history, that'd be awesome. This is
the primary development zone for everything ROACH related, including
software development and testing/programming. Due to the volatile
nature of the binaries (though some of them have stabalised), I don't
think distribution via the wiki is a good idea here. It will require
too much maintenance and there's a good chance of mis-versioning.
Presumably you'll migrate the new ROACH2 SVN to a different GIT repo
too?
Are we going to separate the casper_library into multiple sub-library
files? If so, we can easily pull-in the gavrt library with minimal
changes. It might be nice to merge this into mlib devel's structure
though (eg put the accumulator with the other accumulators so that
people can find it).
Jason
On 02 Jun 2010, at 08:31, Mark Wagner wrote:
Casperians,
The global distribution of our collaboration has exposed limitations
in the centralized nature of our version control system (i.e.
Subversion). Our proposed solution is to migrate the CASPER version
control system from Subversion to Git (http://git-scm.com). Git is
a "free & open source, distributed version control system."
Moving to Git will make branching, merging, and having mirrors
easier. The next step is to migrate our existing Subversion
repository. We've been discussing this, would like to suggest some
changes, and ask for your input.
Acronym definitions:
a. DNM - Do Not Migrate. Leave in a read-only svn repository that
will eventually cease being relevant/interesting.
b. DVW - Distribute Via Wiki. There seem to be quite a few binaries
in the repository and these may be better served through the wiki.
Proposed Repository Changes:
1. branches/ - DNM
2. tags/ - DNM
3. trunk/astro_library/ - DNM (superseded by casper_library?)
4. trunk/caltech/ - Migrate to "caltech" library or absorb into
mlib_devel_10_1 before migration?
5. trunk/mlib_devel_10_1/ - Migrate to "mlib_devel" repo. For the
gavrt_library externals: see trunk/caltech/
6. trunk/mlib_devel_7_1/ - DNM
7. trunk/mlib_devel_8_2/ - DNM
8. trunk/mlib_devel_9_2/ - DNM
9. trunk/newfft_library/ - DNM
10. trunk/projects/* - Migrate each project to its own repo. Make a
bundled "casper_projects" repo that uses Git submodules to include
all (most?, some?, any?) of these individual repos?
11. trunk/ref_designs_tutorials/workshop_2009/ - DNM
12. trunk/ref_designs_tutorials/workshop_2010/ - Migrate to
"casper_workshop" repo.
13. trunk/roach/demos/ - DNM? Already in casper_workshop? Migrate
to "roach_demos" repo?
14. trunk/roach/gw/binaries/ - DNM, DVW.
15. trunk/roach/production/roach2_run1/ - What is this and how is it
used?
16. trunk/roach/production/test_software/ - Move to "roach_test_sw"
repo?
17. trunk/roach/sw/ - Much of this is DNM, DVW. Migrate to other
repos that link back to original repo (e,g, linux, u-boot, busybox)?
migrate to "roach_dev_sw" repo? Build a bundled repo with all roach
related software development?
18. trunk/udp_framework/ - DNM (superseded by KATCP?)
Thanks,
Mark, Dave