Если вы посещаете проект на Launchpad, вы можете видеть все активные ветки всех разработчиков, вовлеченных в проект.
Существует ли команда bzr
, которая делает то же самое, не посещая страницу проекта на панели запуска в браузере?
Я не знаю ни о ком bzr
команда, которая делает это, но это на самом деле очень легко к сценарию с помощью Python Панели запуска API. Например:
#!/usr/bin/env python
import os, sys
from launchpadlib.launchpad import Launchpad
cachedir = os.path.expanduser("~/.launchpadlib/cache/")
launchpad = Launchpad.login_anonymously('find_branches',
'production',
cachedir)
try:
project = launchpad.projects[sys.argv[1]]
for b in project.getBranches():
if b.lifecycle_status not in ["Abandoned", "Merged"]:
print b.bzr_identity
except KeyError:
print "Project unknown... \nUsage: " + sys.argv[0] + " lp_project_name"
Таким образом с python find_branches.py deluge
мы добираемся:
lp:deluge
lp:~vcs-imports/deluge/trunk
lp:~mvoncken/deluge/ajax-template-dev
lp:~deluge-team/deluge/master
lp:~shaohao/deluge/0.9
lp:~damoxc/deluge/master
Можно разрастись с ним и сделать вещи как вид date_created
, date_last_modified
, или создайте свою собственную эвристику для того, какие ответвления интересны Вам. См.:
Bazaar - это система управления версиями, не более того, полностью отделенная от Launchpad .
Можно выполнить прямой анализ HTML-страницы веток проекта или ее ленты новостей Atom.
Объявить функцию оболочки:
lslp() {
wget -q -O - http://feeds.launchpad.net/$1/branches.atom | xml2 | grep "/feed/entry/title=" | cut -c 19-;
}
wget -q -O - http://feeds.launchpad.net/projectname/branches.atom
получить ветку новостей (Atom xml)
[ 1128] xml2
преобразовать XML-документ в плоский формат
grep "/feed/entry/title="
отфильтровать строки с помощью " / feed / entry / title = ", узлы XML, содержащие имя ветви
cut -c 19-
удалить« / feed / entry / title = »из строк результата. [тысяча сто двадцать пять] [одна тысяча сто тридцать одна]
Пример:
$ lslp deluge
lp:deluge
lp:~vcs-imports/deluge/trunk
lp:~damoxc/deluge/master
lp:~deluge-team/deluge/master
lp:~shaohao/deluge/0.9
lp:~mvoncken/deluge/ajax-template-dev