On Thu, 31 Jul 2008 15:06:26 +0200, Petr Baudis <pasky@xxxxxxx> wrote: > On Thu, Jul 31, 2008 at 02:39:55PM +0200, H.Merijn Brand wrote: > > On Thu, 31 Jul 2008 09:21:04 +0200, "H.Merijn Brand" > > <h.m.brand@xxxxxxxxx> wrote: > > > > > I will now be playing with the results a bit. I have attached the > > > script, in case you might want to use it in documentation or examples. > > > For now, all the mods are hardcoded. No arguments and so on. > > > > > > Again, Thanks! > > > > There is a slight problem with this merging approach. The path names > > are as they are/were in the submodules. In module_a, foo.pl was without > > a leading module_a/ path, and now after integration, it still is. Is it > > possible to rethink this whole process that integrates/merges the > > several git repo's in subfolders into the current folder, as-if they > > would have been in this folder in the first place? > > I would suggest re-reading Santi's suggestions: > > > You have, basically, two possibilities: > > > > 1) Add the module_# as submodules: > > http://www.kernel.org/pub/software/scm/git/docs/git-submodule.html > > http://git.or.cz/gitwiki/GitSubmoduleTutorial > > 2) Add the submodules as subtrees (as gitk and git-gui in git.git) > > http://www.kernel.org/pub/software/scm/git/docs/howto/using-merge-subtree.html > > I think the latter is specifically what you want. I got stuck in that process, as the new repo thinks all the files from the sub-folders belong to the top-folder: After this process, there are a lot of files from subfolder include in the "new" top-level folder. --8<--- git-join.sh #!/bin/sh export MODS MODS="include fnc" MODS="$MODS i00f000 i99f000" MODS="$MODS l00m000 l01f000 l02f000 l03f000 l06f000 l90z000" MODS="$MODS rpt" MODS="$MODS leerpl mutbev prtabel tabellen zoomen" echo "Creating merge environment" rm -rf new mkdir new cd new echo "Recovering original repo's" tbz -s -x ../lep4gl-git echo "Initializing new repo" git init for mod in $MODS ; do echo "Merging $mod ..." git remote add -f B$mod $mod git merge -s ours --no-commit B$mod/master git read-tree --prefix=$mod/ -u B$mod/master git commit -m "Merge $mod as our subdirectory" git pull -s subtree B$mod master done echo Done -->8--- -- H.Merijn Brand Amsterdam Perl Mongers http://amsterdam.pm.org/ using & porting perl 5.6.2, 5.8.x, 5.10.x, 5.11.x on HP-UX 10.20, 11.00, 11.11, 11.23, and 11.31, SuSE 10.1, 10.2, and 10.3, AIX 5.2, and Cygwin. http://mirrors.develooper.com/hpux/ http://www.test-smoke.org/ http://qa.perl.org http://www.goldmark.org/jeff/stupid-disclaimers/ -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html