[Dbconfig-common-devel] [FYI] dbconfig-common now maintained in git, svn repo obsoleted

sean finney seanius at debian.org
Sat Feb 7 12:45:36 UTC 2009


don't know how many folks are following this list anymore, but just to make 
sure it's documented for posterity...

i just moved the dbconfig-common packaging repo over to git.  the git repo
should have full read/write privileges for anyone in the dbconfig-common
alioth group, and i've converted the existing svn history into something
roughly parallel in the git repo.

new repository details:

ssh://git.debian.org/git/dbconfig-common/dbconfig-common.git
git://git.debian.org/git/dbconfig-common/dbconfig-common.git

branches:

sid
etch
old/* (obsolete/discontinued svn branches that might be useful in the future)

tags (gpg signed):

tags/<version>


below is a rough account of the process.  on the off-chance that someone
finds something wrong with what i did please let me know :)

i'll shortly make the svn repo read-only by inserting a failing pre-commit
hook with an informative message.


	sean


the log:


clone the svn repo

  mkdir svn2git
  cd svn2git
  git-svn --no-metadata -s clone svn://svn.debian.org/svn/dbconfig-common

checkout local copies of each branch

  cd dbconfig-common
  git branch -r | xargs -n1 -i git checkout -b {} {}

the following are back from the CVS days, rename them to follow
the same naming scheme as the svn tags (i.e. tags/<vers>):

tags/debian_version_1_8
tags/debian_version_1_8_1
tags/debian_version_1_8_10
tags/debian_version_1_8_11
tags/debian_version_1_8_2
tags/debian_version_1_8_3
tags/debian_version_1_8_5
tags/debian_version_1_8_6
tags/debian_version_1_8_7
tags/debian_version_1_8_8
tags/debian_version_1_8_9
tags/v_1_4

  git branch | grep debian_version | awk '{ orig=$1; gsub("_", ".", $1); gsub("debian.version.","",$1); print orig" "$1}'  | xargs -n2 git branch -M
  git branch -M tags/v_1_4 tags/1.4

delete some junk branches:

  git branch -D tags/foo tags/init sean seanius

keep (but rename) some possibly-useful-in-the-future branches

  git branch -M tags/Root-of-oracle old/Root-of-oracle
  git branch -M sqlite old/sqlite
  git branch -M ORACLE old/ORACLE

rename master/trunk to sid

  git branch -M master sid
  git checkout sid
  git branch -D trunk

convert all "tag" branches to "real" tags

  git branch | grep tags | xargs -n1 -i git branch -M {} old{}
  git branch | grep oldtags | sed -e 's/oldtags\///' | xargs -n1 -i git tag -u seanius at debian.org -m 'tagging debian version {}' -s tags/{} oldtags/{}

delete old "tag" branches

 git branch | grep oldtags | xargs -n1 git branch -D

ssh'd to alioth.debian.org, setup the master repo:

  cd /git/dbconfig-common
  umask 002
  mkdir dbconfig-common.git
  cd dbconfig-common.git 
  git --bare init --shared
  echo "official packaging repository for dbconfig-common" > description 
  chmod a+x hooks/post-update 

push the final repo from local->git.debian.org

  git remote add origin ssh://git.debian.org/git/dbconfig-common/dbconfig-common.git
  git push --all origin
  git push --tags origin

back on alioth once more:

  cd /git/dbconfig-common/dbconfig-common.git
  echo ref: refs/heads/sid > HEAD
  git-repack && git-gc

finally, test it out

  cd /home/seanius/debian
  rm -rf dbconfig-common
  git clone ssh://git.debian.org/git/dbconfig-common/dbconfig-common.git

-- 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://lists.alioth.debian.org/pipermail/dbconfig-common-devel/attachments/20090207/27122ed8/attachment.pgp 


More information about the Dbconfig-common-devel mailing list