/[git2cvs]/git2cvs
ViewVC logotype

Contents of /git2cvs

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1 - (show annotations)
Thu Jan 23 13:50:56 2025 UTC (3 months ago) by lab
Branch: MAIN
CVS Tags: HEAD
There's a gap there, a gap!

1 #!/bin/sh
2 export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/pkg/bin:/usr/pkg/sbin:/usr/local/bin:/usr/local/sbin
3 GIT=`mktemp -d`
4 CVS=`mktemp -d`
5 LOG=`mktemp`
6 if [ "x$1" = "x" ]; then
7 echo "Usage: $0 git cvs"
8 exit 1
9 fi
10 if [ "x$2" = "x" ]; then
11 echo "Usage: $0 git cvs"
12 exit 1
13 fi
14 git clone $1 $GIT
15 cd $GIT
16 TAGS=`git tag`
17 BRANCHES=`git branch -laq --format "%(refname:short)"`
18 cvs co $2 $CVS
19 cd $CVS
20 cp -rf $GIT $CVS/trunk
21 rm -rf $CVS/trunk/.git
22 mkdir $CVS/branches $CVS/tags
23 for i in $TAGS; do
24 cd $GIT
25 git checkout tags/$i
26 if [ ! "$?" = "0" ]; then
27 echo "Git tag $i was not successfully copied" >> $LOG
28 continue
29 fi
30 cp -rf $GIT $CVS/tags/`echo $i | sed "s%/%-%g"`
31 if [ "$?" = "0" ]; then
32 echo "Git tag $i was successfully copied" >> $LOG
33 else
34 echo "Git tag $i was not successfully copied" >> $LOG
35 continue
36 fi
37 rm -rf $CVS/tags/`echo $i | sed "s%/%-%g"`/.git
38 done
39 for i in $BRANCHES; do
40 cd $GIT
41 git checkout $i
42 if [ ! "$?" = "0" ]; then
43 echo "Git branch $i was not successfully copied" >> $LOG
44 continue
45 fi
46 cp -rf $GIT $CVS/branches/`echo $i | sed "s%/%-%g"`
47 if [ "$?" = "0" ]; then
48 echo "Git branch $i was successfully copied" >> $LOG
49 else
50 echo "Git branch $i was not successfully copied" >> $LOG
51 continue
52 fi
53 rm -rf $CVS/branches/`echo $i | sed "s%/%-%g"`/.git
54 done
55 cd $CVS
56 cvs add trunk branches tags
57 cat $LOG
58 cvs ci -m "Migrated from Git repository: $1"
59 rm -rf $CVS $GIT $LOG

nishi@yakumo.dev
ViewVC Help
Powered by ViewVC 1.3.0-dev