X-Git-Url: http://dolda2000.com/gitweb/?p=dcp.git;a=blobdiff_plain;f=dcp-init;h=f8f3667d905d493b32312231e9bda3d30862a853;hp=3babd452964a0220e92acf81c9a3368cb2c70be3;hb=HEAD;hpb=6a6fbc9a98092cc69d0685de4d806c2c9e185ef1 diff --git a/dcp-init b/dcp-init index 3babd45..f8f3667 100755 --- a/dcp-init +++ b/dcp-init @@ -3,10 +3,11 @@ set -e usage() { - echo "usage: dcp-init [-sh] [-C key=val] [-d REPODIR] PACKAGE [PATCH...]" + echo "usage: dcp-init [-sh] [-C key=val] [-d REPODIR] PACKAGE [(PATCH|-m)...]" echo " PATCH ::= [-p LEVEL] [-bB BRANCH] FILE" echo " -b creates a new branch at the current patch" echo " -B creates a new branch at the upstream sources" + echo " -m merges the current branch into the master branch" } rungit() { @@ -42,7 +43,7 @@ getaptsrc() { } initrepo() { - rungit init -q --shared + rungit init mkdir "$td/control" touch "$td/control/conf" rungit add control @@ -55,10 +56,15 @@ initbase() { mkdir "$td/control/update.d" cat >"$td/control/functions" <repo/src/debian/changelog.new <"$td/control/build" <"$td/control/update.d/post-logchange" <>"$td/control/conf" rungit add control/conf } @@ -206,6 +250,7 @@ initvals() { level=0 } initvals +curbranch=master while [ $# -gt 0 ]; do arg="$1" shift @@ -214,10 +259,16 @@ while [ $# -gt 0 ]; do level="$1" shift elif [ "$arg" = -b ]; then - rungit checkout -q -b "$1" + curbranch="$1" shift + rungit checkout -q -b "$curbranch" elif [ "$arg" = -B ]; then - rungit checkout -q -b "$1" upstream + curbranch="$1" + shift + rungit checkout -q -b "$curbranch" upstream + elif [ "$arg" = -m ]; then + rungit checkout -q master + rungit merge -n "$curbranch" else echo "dcp-init: unknown patch option '$arg'" >&2 exit 1