#! /bin/bash REPO=https://svn.jboss.org/repos/hibernate PRJ=annotations OLDPRJ=annotations SRC=trunk DEST=trunk TYPE=tags function moveProject { echo $PRJ svn mkdir $REPO/$PRJ -m "Create $PRJ structure" svn mkdir $REPO/$PRJ/trunk -m "Create $PRJ structure" svn mkdir $REPO/$PRJ/tags -m "Create $PRJ structure" svn mkdir $REPO/$PRJ/branches -m "Create $PRJ structure" svn move $REPO/trunk/HibernateExt/$PRJ/.cvsignore $REPO/$PRJ/trunk/ -m "Move $PRJ trunk to the new structure" svn move $REPO/trunk/HibernateExt/$PRJ/build.xml $REPO/$PRJ/trunk/ -m "Move $PRJ trunk to the new structure" svn move $REPO/trunk/HibernateExt/$PRJ/changelog.txt $REPO/$PRJ/trunk/ -m "Move $PRJ trunk to the new structure" svn move $REPO/trunk/HibernateExt/$PRJ/doc $REPO/$PRJ/trunk/ -m "Move $PRJ trunk to the new structure" svn move $REPO/trunk/HibernateExt/$PRJ/jdbc $REPO/$PRJ/trunk/ -m "Move $PRJ trunk to the new structure" svn move $REPO/trunk/HibernateExt/$PRJ/lgpl.txt $REPO/$PRJ/trunk/ -m "Move $PRJ trunk to the new structure" svn move $REPO/trunk/HibernateExt/$PRJ/lib $REPO/$PRJ/trunk/ -m "Move $PRJ trunk to the new structure" svn move $REPO/trunk/HibernateExt/$PRJ/readme.txt $REPO/$PRJ/trunk/ -m "Move $PRJ trunk to the new structure" svn move $REPO/trunk/HibernateExt/$PRJ/src $REPO/$PRJ/trunk/ -m "Move $PRJ trunk to the new structure" svn move $REPO/trunk/HibernateExt/$PRJ/build.properties.dist $REPO/$PRJ/trunk/ -m "Move $PRJ trunk to the new structure" svn move $REPO/trunk/HibernateExt/$PRJ/etc $REPO/$PRJ/trunk/ -m "Move $PRJ trunk to the new structure" svn move $REPO/trunk/HibernateExt/$PRJ/checkstyle_checks.xml $REPO/$PRJ/trunk/ -m "Move $PRJ trunk to the new structure" svn move $REPO/trunk/HibernateExt/$PRJ/common-build.xml $REPO/$PRJ/trunk/ -m "Move $PRJ trunk to the new structure" svn move $REPO/trunk/HibernateExt/$PRJ/build.properties $REPO/$PRJ/trunk/ -m "Move $PRJ trunk to the new structure" svn move $REPO/trunk/HibernateExt/$PRJ/test $REPO/$PRJ/trunk/ -m "Move $PRJ trunk to the new structure" svn move $REPO/trunk/HibernateExt/$PRJ/ivy $REPO/$PRJ/trunk/ -m "Move $PRJ trunk to the new structure" svn move $REPO/trunk/HibernateExt/$PRJ/ivy.xml $REPO/$PRJ/trunk/ -m "Move $PRJ trunk to the new structure" } function moveProjectTag { echo $OLDPRJ to $PRJ - $SRC to $DEST svn mkdir $REPO/$PRJ/$TYPE/$DEST -m "Create $PRJ $DEST structure" local oldPath=$REPO/$TYPE/$SRC/HibernateExt/$OLDPRJ local newPath=$REPO/$PRJ/$TYPE/$DEST/ local message="Move $PRJ $TYPE/$SRC to the new structure ($DEST)" svn copy $oldPath/.cvsignore $newPath -m "$message" svn copy $oldPath/build.xml $newPath -m "$message" svn copy $oldPath/changelog.txt $newPath -m "$message" svn copy $oldPath/doc $newPath -m "$message" svn copy $oldPath/jdbc $newPath -m "$message" svn copy $oldPath/lgpl.txt $newPath -m "$message" svn copy $oldPath/lib $newPath -m "$message" svn copy $oldPath/readme.txt $newPath -m "$message" svn copy $oldPath/src $newPath -m "$message" svn copy $oldPath/build.properties.dist $newPath -m "$message" svn copy $oldPath/etc $newPath -m "$message" svn copy $oldPath/checkstyle_checks.xml $newPath -m "$message" svn copy $oldPath/common-build.xml $newPath -m "$message" svn copy $oldPath/test $newPath -m "$message" svn copy $oldPath/build.properties $newPath -m "$message" svn copy $oldPath/build.properties $newPath -m "$message" svn copy $oldPath/ivy.xml $newPath -m "$message" } function moveAssociatedprojects { OLDPRJ=common PRJ=$OLDPRJ moveProjectTag OLDPRJ=ejb-api PRJ=jpa-api moveProjectTag } function moveBranch { local oldPath=$REPO/$TYPE/$SRC local newPath=$REPO/$PRJ/$TYPE/$DEST local message="Move Branch $SRC to $PRJ" svn mkdir $newPath -m "create branch $SRC in $PRJ" svn copy $oldPath/HibernateExt $newPath/HibernateExt -m "$message" } for PRJ in annotations commons-annotations entitymanager jpa-api search validator do moveProject done #create common structure ##common trunk is not copied since it ought not survive PRJ=common svn mkdir $REPO/$PRJ -m "Create $PRJ structure" svn mkdir $REPO/$PRJ/trunk -m "Create $PRJ structure" svn mkdir $REPO/$PRJ/tags -m "Create $PRJ structure" svn mkdir $REPO/$PRJ/branches -m "Create $PRJ structure" ##### then take care of tags ## ANNOTATIONS #ann 3.3.0 OLDPRJ=annotations PRJ=annotations TYPE=tags SRC=annotations_v3_3_0_GA DEST=v3_3_0_GA moveProjectTag OLDPRJ=common PRJ=$OLDPRJ DEST=$SRC moveProjectTag OLDPRJ=jpa-api PRJ=$OLDPRJ moveProjectTag #before ann split OLDPRJ=metadata PRJ=annotations SRC=BEFORE_HAN_SPLIT DEST=BEFORE_HAN_SPLIT moveProjectTag moveAssociatedprojects #ann 3.2.1 OLDPRJ=metadata PRJ=annotations SRC=annotations_v3_2_1_GA DEST=v3_2_1_GA moveProjectTag DEST=$SRC moveAssociatedprojects #ann 3.2.0 OLDPRJ=metadata PRJ=annotations SRC=annotations_v3_2_0_GA DEST=v3_2_0_GA moveProjectTag DEST=$SRC moveAssociatedprojects #ann 3.2.0.CR3 OLDPRJ=metadata PRJ=annotations SRC=annotations_v3_2_0_CR3 DEST=v3_2_0_CR3 moveProjectTag DEST=$SRC moveAssociatedprojects #ann 3.2.0.CR2 OLDPRJ=metadata PRJ=annotations SRC=annotations_v3_2_0_CR2 DEST=v3_2_0_CR2 moveProjectTag DEST=$SRC moveAssociatedprojects #ann 3.2.0.CR1 OLDPRJ=metadata PRJ=annotations SRC=annotations_v32cr1 DEST=v3_2_0_CR1 moveProjectTag DEST=annotations_$DEST moveAssociatedprojects #ann 3. beta10 OLDPRJ=metadata PRJ=annotations SRC=annotations_v31beta10 DEST=v3_1_0_Beta10 moveProjectTag DEST=annotations_$DEST moveAssociatedprojects #ann 3. beta10b OLDPRJ=metadata PRJ=annotations SRC=annotations_v31beta10b DEST=v3_1_0_Beta10b moveProjectTag DEST=annotations_$DEST moveAssociatedprojects #ann 3. beta9 OLDPRJ=metadata PRJ=annotations SRC=annotations_v31beta9 DEST=v3_1_0_Beta9 moveProjectTag DEST=annotations_$DEST moveAssociatedprojects #ann 3. beta8 OLDPRJ=metadata PRJ=annotations SRC=annotations_v31beta8 DEST=v3_1_0_Beta8 moveProjectTag DEST=annotations_$DEST moveAssociatedprojects #ann 3. beta7 OLDPRJ=metadata PRJ=annotations SRC=annotations_v31beta7 DEST=v3_1_0_Beta7 moveProjectTag DEST=annotations_$DEST moveAssociatedprojects #ann 3. beta6 OLDPRJ=metadata PRJ=annotations SRC=annotations_v31beta6 DEST=v3_1_0_Beta6 moveProjectTag DEST=annotations_$DEST moveAssociatedprojects #ann 3. beta5 OLDPRJ=metadata PRJ=annotations SRC=annotations_v31beta5 DEST=v3_1_0_Beta5 moveProjectTag DEST=annotations_$DEST moveAssociatedprojects #ann 3. beta4 OLDPRJ=metadata PRJ=annotations SRC=annotations_v31beta4 DEST=v3_1_0_Beta4 moveProjectTag DEST=annotations_$DEST moveAssociatedprojects #ann 3. beta3 OLDPRJ=metadata PRJ=annotations SRC=annotations_v31beta3 DEST=v3_1_0_Beta3 moveProjectTag DEST=annotations_$DEST moveAssociatedprojects #ann 3.0 beta2 OLDPRJ=metadata PRJ=annotations SRC=annotations_v30beta2 DEST=v3_0_0_Beta2 moveProjectTag DEST=annotations_$DEST moveAssociatedprojects #ann 3.0 beta1 OLDPRJ=metadata PRJ=annotations SRC=annotations_v30beta1 DEST=v3_0_0_Beta1 moveProjectTag DEST=annotations_$DEST moveAssociatedprojects #ann 3.0 alpha3 OLDPRJ=metadata PRJ=annotations SRC=annotations_v30alpha3 DEST=v3_0_0_Alpha3 moveProjectTag DEST=annotations_$DEST moveAssociatedprojects #ann bfore ejb3 edr2 OLDPRJ=metadata PRJ=annotations SRC=before_ejb3-edr2 DEST=before_ejb3-edr2 moveProjectTag moveAssociatedprojects #ann bfore ejb3 ann OLDPRJ=metadata PRJ=annotations SRC=before_ejb3_annotations DEST=before_ejb3_annotations moveProjectTag ## ../common.xml is the one shared #ann bfore ejb3 pfd OLDPRJ=metadata PRJ=annotations SRC=before_ejb3_pfd DEST=before_ejb3_pfd moveProjectTag moveAssociatedprojects #ann merge branch 3.2 trunk OLDPRJ=annotations PRJ=annotations SRC=merge_Branch_3_2_trunk DEST=merge_Branch_3_2_trunk moveProjectTag moveAssociatedprojects OLDPRJ=jpa-api PRJ=jpa-api moveProjectTag ## EntityManager #em 3 3 1 GA OLDPRJ=entitymanager PRJ=entitymanager SRC=entitymanager_v3_3_1_GA DEST=v3_3_1_GA moveProjectTag DEST=$SRC OLDPRJ=common PRJ=$OLDPRJ moveProjectTag OLDPRJ=jpa-api PRJ=$OLDPRJ moveProjectTag #em 3 3 0 GA OLDPRJ=entitymanager PRJ=entitymanager SRC=entitymanager_v3_3_0_GA DEST=v3_3_0_GA moveProjectTag DEST=$SRC OLDPRJ=common PRJ=$OLDPRJ moveProjectTag OLDPRJ=jpa-api PRJ=$OLDPRJ moveProjectTag #before ann split OLDPRJ=metadata PRJ=annotations SRC=BEFORE_HAN_SPLIT DEST=BEFORE_HAN_SPLIT moveProjectTag moveAssociatedprojects #em 3.2.1 OLDPRJ=ejb PRJ=entitymanager SRC=entitymanager_v3_2_1_GA DEST=v3_2_1_GA moveProjectTag DEST=$SRC moveAssociatedprojects #em 3.2.0 OLDPRJ=ejb PRJ=entitymanager SRC=entitymanager_v3_2_0_GA DEST=v3_2_0_GA moveProjectTag DEST=$SRC moveAssociatedprojects #em 3.2.0.cr3 OLDPRJ=ejb PRJ=entitymanager SRC=entitymanager_v3_2_0_CR3 DEST=v3_2_0_CR3 moveProjectTag DEST=$SRC moveAssociatedprojects #em 3.2.0.cr2 OLDPRJ=ejb PRJ=entitymanager SRC=entitymanager_v3_2_0_CR2 DEST=v3_2_0_CR2 moveProjectTag DEST=$SRC moveAssociatedprojects #em 3.2.0.CR1 OLDPRJ=ejb PRJ=entitymanager SRC=entitymanager_v32cr1 DEST=v3_2_0_CR1 moveProjectTag DEST=entitymanager_$DEST moveAssociatedprojects #em 3.1.0.beta8b OLDPRJ=ejb PRJ=entitymanager SRC=entitymanager_v31beta8b DEST=v3_1_0_Beta8b moveProjectTag DEST=entitymanager_$DEST moveAssociatedprojects #em 3.1.0.beta8 OLDPRJ=ejb PRJ=entitymanager SRC=entitymanager_v31beta8 DEST=v3_1_0_Beta8 moveProjectTag DEST=entitymanager_$DEST moveAssociatedprojects #em 3.1.0.beta7 OLDPRJ=ejb PRJ=entitymanager SRC=entitymanager_v31beta7 DEST=v3_1_0_Beta7 moveProjectTag DEST=entitymanager_$DEST moveAssociatedprojects #em 3.1.0.beta6 OLDPRJ=ejb PRJ=entitymanager SRC=entitymanager_v31beta6 DEST=v3_1_0_Beta6 moveProjectTag DEST=entitymanager_$DEST moveAssociatedprojects #em 3.1.0.beta5 OLDPRJ=ejb PRJ=entitymanager SRC=entitymanager_v31beta5 DEST=v3_1_0_Beta5 moveProjectTag DEST=entitymanager_$DEST moveAssociatedprojects #em 3.1.0.beta4 OLDPRJ=ejb PRJ=entitymanager SRC=entitymanager_v31beta4 DEST=v3_1_0_Beta4 moveProjectTag DEST=entitymanager_$DEST moveAssociatedprojects #em 3.1.0.beta3 OLDPRJ=ejb PRJ=entitymanager SRC=entitymanager_v31beta3 DEST=v3_1_0_Beta3 moveProjectTag DEST=entitymanager_$DEST moveAssociatedprojects #em 3.1.0.beta2 OLDPRJ=ejb PRJ=entitymanager SRC=entitymanager_v31beta2 DEST=v3_1_0_Beta2 moveProjectTag DEST=entitymanager_$DEST moveAssociatedprojects #em 3.1.0.beta1 OLDPRJ=ejb PRJ=entitymanager SRC=entitymanager_v31beta1 DEST=v3_1_0_Beta1 moveProjectTag DEST=entitymanager_$DEST moveAssociatedprojects #em merge branch 3.2 trunk OLDPRJ=entitymanager PRJ=entitymanager SRC=merge_Branch_3_2_trunk DEST=merge_Branch_3_2_trunk moveProjectTag moveAssociatedprojects OLDPRJ=jpa-api PRJ=jpa-api moveProjectTag #ann bfore ejb3 pfd OLDPRJ=metadata PRJ=annotations SRC=before_ejb3_pfd DEST=before_ejb3_pfd moveProjectTag #associated projects have already been moved ## Search #ann 3.0.0.Beta1 OLDPRJ=search PRJ=$OLDPRJ TYPE=tags SRC=search_3_0_0_Beta1 DEST=v3_0_0_Beta1 moveProjectTag OLDPRJ=common PRJ=$OLDPRJ DEST=$SRC moveProjectTag OLDPRJ=jpa-api PRJ=$OLDPRJ moveProjectTag ## Search #ann 3.0.0.Beta2 OLDPRJ=search PRJ=$OLDPRJ TYPE=tags SRC=search_3_0_0_Beta2 DEST=v3_0_0_Beta2 moveProjectTag OLDPRJ=common PRJ=$OLDPRJ DEST=$SRC moveProjectTag OLDPRJ=jpa-api PRJ=$OLDPRJ moveProjectTag ## Search #ann 3.0.0.Beta3 OLDPRJ=search PRJ=$OLDPRJ TYPE=tags SRC=search_3_0_0_Beta3 DEST=v3_0_0_Beta3 moveProjectTag OLDPRJ=common PRJ=$OLDPRJ DEST=$SRC moveProjectTag OLDPRJ=jpa-api PRJ=$OLDPRJ moveProjectTag ## Search #ann 3.0.0.Beta4 OLDPRJ=search PRJ=$OLDPRJ TYPE=tags SRC=search_3_0_0_Beta4 DEST=v3_0_0_Beta4 moveProjectTag OLDPRJ=common PRJ=$OLDPRJ DEST=$SRC moveProjectTag OLDPRJ=jpa-api PRJ=$OLDPRJ moveProjectTag ## Validator #ann 3.0.0.GA OLDPRJ=validator PRJ=$OLDPRJ TYPE=tags SRC=validator_3_0_0_GA DEST=v3_0_0_GA moveProjectTag OLDPRJ=common PRJ=$OLDPRJ DEST=$SRC moveProjectTag OLDPRJ=jpa-api PRJ=$OLDPRJ moveProjectTag ## Commons-annotations #ann 3.0.0.GA OLDPRJ=commons-annotations PRJ=$OLDPRJ TYPE=tags SRC=annotations_v3_3_0_GA DEST=v3_0_0_GA moveProjectTag OLDPRJ=common PRJ=$OLDPRJ DEST=commons_annotations_v3_0_0_GA moveProjectTag OLDPRJ=jpa-api PRJ=$OLDPRJ moveProjectTag #### Branches ## Branch 3.2 # annotations TYPE=branches SRC=Branch_3_2 DEST=$SRC PRJ=annotations moveBranch # em PRJ=entitymanager moveBranch # jpa-api PRJ=jpa-api moveBranch # common PRJ=common moveBranch