mirror of
https://git.launchpad.net/ubuntu-dev-tools
synced 2025-03-16 01:21:07 +00:00
get-branches is in lptools now, too.
This commit is contained in:
parent
13a6851a10
commit
13c0d09c25
4
debian/changelog
vendored
4
debian/changelog
vendored
@ -1,7 +1,7 @@
|
|||||||
ubuntu-dev-tools (0.129) UNRELEASED; urgency=low
|
ubuntu-dev-tools (0.129) UNRELEASED; urgency=low
|
||||||
|
|
||||||
* Remove grab-attachments, lp-project-upload, lp-list-bugs, lp-set-dup
|
* Remove get-branches, grab-attachments, lp-project-upload, lp-list-bugs,
|
||||||
and lp-shell which are now included in lptools.
|
lp-set-dup and lp-shell which are now included in lptools.
|
||||||
|
|
||||||
-- Jelmer Vernooij <jelmer@ubuntu.com> Wed, 17 Aug 2011 12:47:59 +0200
|
-- Jelmer Vernooij <jelmer@ubuntu.com> Wed, 17 Aug 2011 12:47:59 +0200
|
||||||
|
|
||||||
|
2
debian/control
vendored
2
debian/control
vendored
@ -76,8 +76,6 @@ Description: useful tools for Ubuntu developers
|
|||||||
- debian-distro-info - provides information about Debian's distributions.
|
- debian-distro-info - provides information about Debian's distributions.
|
||||||
- dgetlp - download a source package from the Launchpad library.
|
- dgetlp - download a source package from the Launchpad library.
|
||||||
- distro-info - provides information about the distributions' releases.
|
- distro-info - provides information about the distributions' releases.
|
||||||
- get-branches - used to branch/checkout all the bzr branches in a Launchpad
|
|
||||||
team.
|
|
||||||
- get-build-deps - install the build dependencies needed for a package
|
- get-build-deps - install the build dependencies needed for a package
|
||||||
reading debian/control.
|
reading debian/control.
|
||||||
- grab-merge - grabs a merge from merges.ubuntu.com easily.
|
- grab-merge - grabs a merge from merges.ubuntu.com easily.
|
||||||
|
2
debian/copyright
vendored
2
debian/copyright
vendored
@ -81,7 +81,6 @@ License: GPL-2+
|
|||||||
|
|
||||||
Files: ack-sync
|
Files: ack-sync
|
||||||
doc/bitesize.1
|
doc/bitesize.1
|
||||||
doc/get-branches.1
|
|
||||||
doc/grab-merge.1
|
doc/grab-merge.1
|
||||||
doc/harvest.1
|
doc/harvest.1
|
||||||
doc/hugdaylist.1
|
doc/hugdaylist.1
|
||||||
@ -90,7 +89,6 @@ Files: ack-sync
|
|||||||
doc/setup-packaging-environment.1
|
doc/setup-packaging-environment.1
|
||||||
doc/syncpackage.1
|
doc/syncpackage.1
|
||||||
bitesize
|
bitesize
|
||||||
get-branches
|
|
||||||
grab-merge
|
grab-merge
|
||||||
harvest
|
harvest
|
||||||
hugdaylist
|
hugdaylist
|
||||||
|
@ -1,47 +0,0 @@
|
|||||||
.TH get\-branches "1" "11 August 2008" "ubuntu-dev-tools"
|
|
||||||
.SH NAME
|
|
||||||
get\-branches - downloads all branches related to a Launchpad team or person
|
|
||||||
|
|
||||||
.SH SYNOPSIS
|
|
||||||
.B get\-branches
|
|
||||||
.RB [ \-d
|
|
||||||
.IR directory ]
|
|
||||||
.RB [ \-o
|
|
||||||
.BR branch | checkout ]
|
|
||||||
.B \-t
|
|
||||||
.I team
|
|
||||||
.br
|
|
||||||
.B get\-branches
|
|
||||||
.I team
|
|
||||||
.br
|
|
||||||
.B get\-branches \-\-help
|
|
||||||
|
|
||||||
.SH DESCRIPTION
|
|
||||||
\fBget\-branches\fR uses the LP API to get a list of branches for a person or
|
|
||||||
team and calls Bazaar to download all branches.
|
|
||||||
|
|
||||||
.SH OPTIONS
|
|
||||||
Listed below are the command line options for \fBget\-branches\fR:
|
|
||||||
.TP
|
|
||||||
.BR \-h ", " \-\-help
|
|
||||||
Display a help message and exit.
|
|
||||||
.TP
|
|
||||||
.BR \-d ", " \-\-directory
|
|
||||||
Download branches to a directory other than the current directory.
|
|
||||||
.TP
|
|
||||||
.BR \-o ", " \-\-operation
|
|
||||||
Specifies which Bazaar operation to use when downloading the branches; may be
|
|
||||||
either \fIbranch\fR or \fIcheckout\fR.
|
|
||||||
.TP
|
|
||||||
.BR \-t ", " \-\-team
|
|
||||||
Specifies which Launchpad team/person to download branches from.
|
|
||||||
This option is required.
|
|
||||||
|
|
||||||
.SH AUTHORS
|
|
||||||
\fBget\-branches\fR was written by Daniel Holbach <daniel.holbach@ubuntu.com>,
|
|
||||||
and this manual page was written by Jonathan Patrick Davies <jpds@ubuntu.com>.
|
|
||||||
.PP
|
|
||||||
Both are released under the terms of the GNU General Public License, version 3.
|
|
||||||
|
|
||||||
.SH SEE ALSO
|
|
||||||
.B bzr(1)
|
|
118
get-branches
118
get-branches
@ -1,118 +0,0 @@
|
|||||||
#!/usr/bin/python
|
|
||||||
# -*- coding: utf-8 -*-
|
|
||||||
#
|
|
||||||
# Copyright (C) 2007 Canonical Ltd.
|
|
||||||
# Created by Daniel Holbach <daniel.holbach@ubuntu.com>
|
|
||||||
# Modified by Jonathan Patrick Davies <jpds@ubuntu.com>
|
|
||||||
#
|
|
||||||
# ##################################################################
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or
|
|
||||||
# modify it under the terms of the GNU General Public License
|
|
||||||
# as published by the Free Software Foundation; version 3.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# See file /usr/share/common-licenses/GPL-3 for more details.
|
|
||||||
#
|
|
||||||
# ##################################################################
|
|
||||||
#
|
|
||||||
# This script is used to checkout or branch all the Bazaar branches
|
|
||||||
# of a Launchpad team.
|
|
||||||
#
|
|
||||||
|
|
||||||
import os
|
|
||||||
import sys
|
|
||||||
from optparse import OptionParser
|
|
||||||
from ubuntutools.lp.lpapicache import PersonTeam
|
|
||||||
from ubuntutools import subprocess
|
|
||||||
|
|
||||||
def main():
|
|
||||||
usage = "Usage: %prog [-d <directory>] -t <team> [-o <operation>]"
|
|
||||||
usage += "\nUsage: %prog <team>"
|
|
||||||
opt_parser = OptionParser(usage)
|
|
||||||
|
|
||||||
# Our options.
|
|
||||||
opt_parser.add_option("-d", "--directory", action="store", type="string",
|
|
||||||
dest="directory", default=os.getcwd(),
|
|
||||||
help="Directory to download branches to.")
|
|
||||||
opt_parser.add_option("-t", "--team", action="store", type="string",
|
|
||||||
dest="lpteam",
|
|
||||||
help="Launchpad team to download branches from.")
|
|
||||||
opt_parser.add_option("-o", "--operation", action="store", type="string",
|
|
||||||
dest="operation", default="branch",
|
|
||||||
help="Whether to branch or checkout the Bazaar "
|
|
||||||
"branches. May be either 'branch' or "
|
|
||||||
"'checkout'.")
|
|
||||||
|
|
||||||
(options, args) = opt_parser.parse_args()
|
|
||||||
|
|
||||||
# Fetch our current directory to return to later.
|
|
||||||
pwd = os.getcwd()
|
|
||||||
|
|
||||||
# Parse our options.
|
|
||||||
if len(args) != 1 and options.lpteam == None:
|
|
||||||
opt_parser.error("No team has been specified.")
|
|
||||||
|
|
||||||
# Dictionary settings.
|
|
||||||
directory = options.directory
|
|
||||||
if not os.path.isdir(directory): # Check that it is a directory.
|
|
||||||
opt_parser.error("%s is not a valid directory." % directory)
|
|
||||||
os.chdir(directory)
|
|
||||||
|
|
||||||
# Type of Bazaar operation to perform.
|
|
||||||
operation_type = options.operation.lower()
|
|
||||||
if operation_type not in ("branch", "checkout"):
|
|
||||||
opt_parser.error("Invalid operation '%s' for '-o' flag." % \
|
|
||||||
operation_type)
|
|
||||||
|
|
||||||
# Launchpad team setting.
|
|
||||||
if options.lpteam:
|
|
||||||
team = options.lpteam.lower()
|
|
||||||
if args:
|
|
||||||
team = args[0].lower()
|
|
||||||
try:
|
|
||||||
team = PersonTeam(team)
|
|
||||||
except KeyError:
|
|
||||||
print >> sys.stderr, "E: The team '%s' doesn't exist." % team
|
|
||||||
|
|
||||||
# Get a list of branches
|
|
||||||
branches = team.getBranches()
|
|
||||||
|
|
||||||
print "Downloading all branches for the '%s' team. This may take some " \
|
|
||||||
"time." % team.display_name
|
|
||||||
|
|
||||||
try:
|
|
||||||
os.makedirs(team.name)
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
os.chdir(team.name)
|
|
||||||
|
|
||||||
for branch in branches:
|
|
||||||
project_name = branch.project.name
|
|
||||||
if not os.path.exists(project_name):
|
|
||||||
os.makedirs(project_name)
|
|
||||||
os.chdir(project_name)
|
|
||||||
|
|
||||||
if not os.path.exists(branch.name):
|
|
||||||
print "Branching %s ..." % branch.display_name
|
|
||||||
cmd = ["bzr", operation_type, branch.bzr_identity, branch.name]
|
|
||||||
subprocess.call(cmd)
|
|
||||||
else:
|
|
||||||
print "Merging %s ..." % branch.display_name
|
|
||||||
os.chdir(branch.name)
|
|
||||||
subprocess.call(["bzr", "merge", "--pull", "--remember"])
|
|
||||||
os.chdir(os.path.join(directory, team.name))
|
|
||||||
|
|
||||||
os.chdir(pwd)
|
|
||||||
sys.exit(0)
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
try:
|
|
||||||
main()
|
|
||||||
except KeyboardInterrupt:
|
|
||||||
print "Operation was interrupted by user."
|
|
Loading…
x
Reference in New Issue
Block a user