aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/mtn2git
diff options
context:
space:
mode:
authorHolger Freyther <zecke@selfish.org>2008-03-31 15:58:50 +0000
committerHolger Freyther <zecke@selfish.org>2008-03-31 15:58:50 +0000
commit68a4b3f162280e551787f56e3808c3b551d90167 (patch)
tree60e6338ec53edf17544ff671276621492dbea665 /contrib/mtn2git
parentf9302761ebe835b0059b73e104169837b31f5c14 (diff)
downloadopenembedded-68a4b3f162280e551787f56e3808c3b551d90167.tar.gz
mtn2git: Add an example script that can be used to update the git mirror
This is an example as it is using relative paths and needs some changes to work for you. It assumes that you have a git repository (git-init was ran) and then will update it there. Before each update it will clone the git repository and copy the old state files into the repository. So in case something goes wrong you can do a post mortom. The state files are relatively small and the git repository is working with hardlinks so it does not even take too much space. On first pull you need to run git-repack or git-gc
Diffstat (limited to 'contrib/mtn2git')
-rw-r--r--contrib/mtn2git/update-script.example32
1 files changed, 32 insertions, 0 deletions
diff --git a/contrib/mtn2git/update-script.example b/contrib/mtn2git/update-script.example
new file mode 100644
index 0000000000..3b23e19a49
--- /dev/null
+++ b/contrib/mtn2git/update-script.example
@@ -0,0 +1,32 @@
+#!/bin/bash
+
+export PATH=/home/zecke/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
+
+cd $HOME/mtn2git-scm/oe-convert/
+
+# Update monotone
+mtn --db ../OE.mtn pull monotone.linuxtogo.org "org.openembedded.*"
+
+OLD_OE_DIR=openembedded-git.$$.$RANDOM
+
+git-clone -l openembedded-git $OLD_OE_DIR
+cp git-import-marks2 $OLD_OE_DIR/
+cp mtn2git-status.v2 $OLD_OE_DIR/
+cp mtn2git-marks $OLD_OE_DIR/
+
+cd openembedded-git
+# Convert (this could fail as our marks are not complete...) and we hardcode the revision
+#../../mtn2git/mtn2git.py --db ../../OE.mtn --marks=../mtn2git-marks --status=../mtn2git-status.v2 2> /dev/null | git-fast-import --date-format=rfc2822 --import-marks=../git-import-marks2 --export-marks=../git-import-marks2
+../../mtn2git/mtn2git.py --db ../../OE.mtn --marks=../mtn2git-marks --status=../mtn2git-status.v2 | git-fast-import --date-format=rfc2822 --import-marks=../git-import-marks2 --export-marks=../git-import-marks2
+
+
+
+# Push all changes to the server, update the master tag as well
+for branch in dev dreambox documentation oetest oz354x packaged-staging oz354fam083 angstrom-2007.12-stable entity stable;
+do
+ git-push --force git+ssh://ABC@repo.or.cz/srv/git/org.openembedded.dev.git org.openembedded.$branch;
+done
+
+#dev is our master
+git-push --force git+ssh://ABC@repo.or.cz/srv/git/org.openembedded.dev.git org.openembedded.dev:master;
+