summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xscripts/mageia-reset-and-import.sh25
1 files changed, 16 insertions, 9 deletions
diff --git a/scripts/mageia-reset-and-import.sh b/scripts/mageia-reset-and-import.sh
index 56f1b97..e4bf524 100755
--- a/scripts/mageia-reset-and-import.sh
+++ b/scripts/mageia-reset-and-import.sh
@@ -5,8 +5,12 @@ SOFTWARE=
if [ -d ".git" -a -f ".git/config" -a -f ".git/svn/.metadata" ]; then
SOFTWARE=$(git config svn-remote.svn.fetch | cut -d':' -f1 | sed 's,/trunk,,' | trim)
fi
+NEWSOFTWARE=$SOFTWARE
+if [ -n "$1" ]; then
+ NEWSOFTWARE=$1
+fi
echo
-echo "Identified software name: $SOFTWARE"
+echo "Identified software name: $SOFTWARE (New name: $NEWSOFTWARE)"
if [ -z "$SOFTWARE" ]; then
echo "You must run this in a git-svn clone folder." >&2
@@ -67,6 +71,9 @@ echo $NEWSVNUUID
echo -n "Updating SVN Remote config (old value: $(git config svn-remote.svn.url))... "
git config svn-remote.svn.url $NEWSVNURL
+git config svn-remote.svn.fetch "$NEWSOFTWARE/trunk:refs/remotes/trunk"
+git config svn-remote.svn.branches "$NEWSOFTWARE/branches/*:refs/remotes/*"
+git config svn-remote.svn.tags "$NEWSOFTWARE/tags/*:refs/remotes/tags/*"
echo "done"
echo -n "Updating Internal SVN metadata... "
@@ -149,7 +156,7 @@ if [ -z "$REPLAY" ]; then
echo "Press any key to contiue."
read -n 1
- svn log $NEWSVNURL/$SOFTWARE | less
+ svn log $NEWSVNURL/$NEWSOFTWARE | less
echo
echo "OK you're back :)"
@@ -219,7 +226,7 @@ SVNPATH=$(realpath ../$SOFTWARE.svn)
rm -rf $SVNPATH
mkdir -p $SVNPATH/export
cd $SVNPATH/export
-svn export --force --ignore-keywords --ignore-externals -r $revision $NEWSVNURL/$SOFTWARE/trunk .
+svn export --force --ignore-keywords --ignore-externals -r $revision $NEWSVNURL/$NEWSOFTWARE/trunk .
cd -
svnadmin create $SVNPATH/repo
svnrepo=file://$SVNPATH/repo
@@ -228,7 +235,7 @@ svn checkout $svnrepo $SVNPATH/checkout
cd $SVNPATH/checkout
if [ -n "$morerevisions" ]; then
for rev in $morerevisions; do
- svn merge -c $rev --ignore-ancestry --accept theirs-full --allow-mixed-revisions $NEWSVNURL/$SOFTWARE/trunk .
+ svn merge -c $rev --ignore-ancestry --accept theirs-full --allow-mixed-revisions $NEWSVNURL/$NEWSOFTWARE/trunk .
svn commit -m "Merged r$rev"
if [ $? -ne 0 ]; then
echo
@@ -258,20 +265,20 @@ Synthesized commit during git-svn import combining previous Mandriva history wit
This commit consitsts of the following subversion commits:
EOF
-svn log -r 1:$revision $NEWSVNURL/$SOFTWARE/trunk >>$COMMITTXT
-squashedrevs=$(svn log -r 1:$revision $NEWSVNURL/$SOFTWARE/trunk | grep -E "^r[0-9]+ \| " | cut -d' ' -f1 | xargs | sed 's/r//g')
+svn log -r 1:$revision $NEWSVNURL/$NEWSOFTWARE/trunk >>$COMMITTXT
+squashedrevs=$(svn log -r 1:$revision $NEWSVNURL/$NEWSOFTWARE/trunk | grep -E "^r[0-9]+ \| " | cut -d' ' -f1 | xargs | sed 's/r//g')
rev=0
if [ -n "$morerevisions" ]; then
for rev in $morerevisions; do
- svn log -r $rev $NEWSVNURL/$SOFTWARE | tail -n +2 >>$COMMITTXT
+ svn log -r $rev $NEWSVNURL/$NEWSOFTWARE | tail -n +2 >>$COMMITTXT
done
fi
# Import any documentation from the CLEANUP_PROGRESS.txt file
[ "$rev" = "0" ] && rev=$revision
CLEANUP_PROGRESS=$(mktemp /tmp/cleanupprogress.XXXXXX)
-svn cat $NEWSVNURL/$SOFTWARE/CLEANUP_PROGRESS.txt@$rev 2>/dev/null >$CLEANUP_PROGRESS
+svn cat $NEWSVNURL/$NEWSOFTWARE/CLEANUP_PROGRESS.txt@$rev 2>/dev/null >$CLEANUP_PROGRESS
if [ -s $CLEANUP_PROGRESS ]; then
echo >>$COMMITTXT
echo "In addition to the above commits, the following cleaning work has been recorded:" >>$COMMITTXT
@@ -280,7 +287,7 @@ if [ -s $CLEANUP_PROGRESS ]; then
fi
rm -f $CLEANUP_PROGRESS
-COMMITDATE=$(svn log -r $revision $NEWSVNURL/$SOFTWARE | head -n2 | tail -n1 | cut -d'|' -f3 | cut -d'(' -f1 | trim)
+COMMITDATE=$(svn log -r $revision $NEWSVNURL/$NEWSOFTWARE | head -n2 | tail -n1 | cut -d'|' -f3 | cut -d'(' -f1 | trim)
env GIT_COMMITTER_NAME="Mageia SVN-Git Migration" \
GIT_COMMITTER_EMAIL="svn-git-migration@mageia.org" \
GIT_COMMITTER_DATE="$COMMITDATE" \