Sunday, December 27, 2009

Single GIT Synchronet Mirror

Had been able to using git -cvsimport to mirror cvs.synchronet, but could not at the time do so into a single git repository due to the structure of the original cvs repository. The updates to that set of repositories, one for each of the subdirectories in the original repostiory, are active and operational. Am experimenting with getting those separate git repositories into one single repository, although this is still a two step process; reference [1] for information about the using the subtree merge method for this.

What I am doing is using the following commands to prepare the second step repository for the merges, using as an example commands for the ctrl directory;
git remote add -f ctrl /opt/sbbscvsgit/repo/sbbs/ctrl
git merge -s ours --no-commit ctrl/master
git read-tree --prefix=ctrl/ -u ctrl/master
git commit -m "Merge ctrl/ subdirectory"
This then is an example, again using the ctrl directory as an example, of pulling updates after the previous commands have been used prepare each directory:
git pull -s subtree ctrl master

No comments:

Post a Comment