aboutsummaryrefslogtreecommitdiffstats
path: root/RepSys/commands/co.py
diff options
context:
space:
mode:
Diffstat (limited to 'RepSys/commands/co.py')
-rw-r--r--RepSys/commands/co.py36
1 files changed, 36 insertions, 0 deletions
diff --git a/RepSys/commands/co.py b/RepSys/commands/co.py
new file mode 100644
index 0000000..0c9d2dc
--- /dev/null
+++ b/RepSys/commands/co.py
@@ -0,0 +1,36 @@
+#!/usr/bin/python
+from RepSys import Error
+from RepSys.command import *
+from RepSys.rpmutil import checkout
+import getopt
+import sys
+
+HELP = """\
+Usage: repsys co [OPTIONS] URL [LOCALPATH]
+
+Options:
+ -r REV Revision to checkout
+ -h Show this message
+
+Examples:
+ repsys co http://repos/svn/cnc/snapshot/foo
+ repsys co http://repos/svn/cnc/snapshot/foo foo-pkg
+"""
+
+def parse_options():
+ parser = OptionParser(help=HELP)
+ parser.add_option("-r", dest="revision")
+ opts, args = parser.parse_args()
+ if len(args) not in (1, 2):
+ raise Error, "invalid arguments"
+ opts.url = default_parent(args[0])
+ if len(args) == 2:
+ opts.path = args[1]
+ else:
+ opts.path = None
+ return opts
+
+def main():
+ do_command(parse_options, checkout)
+
+# vim:et:ts=4:sw=4