# attempt to merge eclipse.platform.ui/ eclipse.platform.ui.e4/ # in this merge, we simply pull both repos together and then # merge them onto head cd eclipse.platform.ui git tag | sort -u >../tags_ui.txt git branch -r | sort -u >../branch_ui.txt cd ../eclipse.platform.ui.e4/ git tag | sort -u >../tags_e4.txt git branch -r | sort -u >../branch_e4.txt cd .. comm -12 tags_ui.txt tags_e4.txt >common_tags.txt comm -12 branch_ui.txt branch_e4.txt >common_branches.txt #Clean up the tags out of the eclipse.platform.ui repo #Probably branches as well. # Fix R4_HEAD # use git log -10 to find the commit, then: #cvs2svn 8d34cecb6b804430ea35d8fe84ecc864feb810f0 # delete commit #bbokowski 01abec9233ebf30c5a57f16a91d2b6edc3435dbb # parent commit rebase --onto 01abec9233ebf30c5a57f16a91d2b6edc3435dbb 8d34cecb6b804430ea35d8fe84ecc864feb810f0 # if you are creating the main repo, you're OK # if you haven't then you have a lot of pushing to do: git push --force # merge org.eclipse.ui/R4_HEAD into the 4.2 master # did it using EGit and the http://wiki.eclipse.org/EGit/User_Guide#Resolving_a_merge_conflict # Merge tool Conflicts: bundles/org.eclipse.ui/META-INF/MANIFEST.MF bundles/org.eclipse.ui/schema/viewActions.exsd + I had to fix PDE prefs for at least 2 projects cd eclipse.platform.ui for f in $( cat ../common_tags.txt ) ; do git tag ${f}_R3 ${f}; git tag -d $f ; git push origin :$f ; done # pull in the e4 ui stuff and add the merge node. # git remote add e4 ssh://pwebster@git.eclipse.org/gitroot/e4/eclipse.platform.ui.e4.git git fetch e4 git merge e4/master # Replicate all of the branches so that you can create a useful repo git branch -r >../br.txt # remove e4/master and origin/master from the file, then for f in $( cat ../br.txt ); do BR=$( echo $f | sed 's/^.*\///g' ); git branch -t $BR $f ; done # Then since master now points to the last commit in e4, # the push will push everything back to the main repo # except we can't push any of our franken-repos, because of the commit hooks #git push --all origin #git push --tags origin # so we'll do it the bad way cd .. git clone --bare eclipse.platform.ui eclipse.platform.ui.git cd eclipse.platform.ui.git git remote rm origin # check that it is shared git config -l git config --add core.sharedrepository 1 # copy it to git root, from my local machine scp -r * pwebster@dev.eclipse.org:/gitroot/platform/eclipse.platform.ui.git