summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--backuptogit.sh28
-rw-r--r--gitexporter.lua11
2 files changed, 35 insertions, 4 deletions
diff --git a/backuptogit.sh b/backuptogit.sh
new file mode 100644
index 0000000..47f3040
--- /dev/null
+++ b/backuptogit.sh
@@ -0,0 +1,28 @@
+#!/bin/sh
+
+
+BACKUPDIR=/tmp/advbackup
+OUTGIT=/tmp/luaatcgit
+
+SCRIPTPTH=$(dirname `realpath $0`)
+mkdir -p $OUTGIT
+cd $OUTGIT
+git init
+git config user.name "autocommitter"
+git config user.email "autocommitter@linux-forks.de"
+
+
+
+for f in $BACKUPDIR/*.tar.gz
+do
+ d=`echo $f | sed -E 's/.*\/([0-9]+-[0-9]+-[0-9]+).*/\1/g'`
+ mkdir -p /tmp/world
+ cd /tmp/world
+ tar xzf $f
+ find . -type f -name "advtrains_*" -exec mv -i {} . \;
+ lua $SCRIPTPTH/gitexporter.lua /tmp/world/ $OUTGIT
+ cd $OUTGIT
+ git add .
+ git commit -m "State at $d"
+ rm -r /tmp/world
+done
diff --git a/gitexporter.lua b/gitexporter.lua
index 27384e9..c2af114 100644
--- a/gitexporter.lua
+++ b/gitexporter.lua
@@ -38,10 +38,13 @@ function node_file(env, pos)
return base.."/"..pos..".lua"
end
-
-
-tb = serialize_lib.read_table_from_file(inpath.."/advtrains_atlatc.ls")
-
+v4path = inpath.."/advtrains_atlatc.ls"
+tb = {}
+if lfs.attributes(v4path) then
+ tb = serialize_lib.read_table_from_file(v4path)
+else
+ tb = dofile(inpath.."/advtrains_luaautomation")
+end
ensure_dir(base_path)
for env, data in pairs(tb.envs) do