런치 패드에서 프로젝트를 방문하면 프로젝트에 관련된 모든 개발자의 모든 활성 브랜치를 볼 수 있습니다.
bzr
브라우저에서 Launchpad의 프로젝트 페이지를 방문하지 않고 동일한 작업을 수행 하는 명령이 있습니까?
답변
나는 bzr
이것을 하는 명령을 모른다 . 그러나 실제로 Launchpad 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
또는 지점이 당신에게 관심이 무엇인지에 대한 자신의 발견을 만들 수 있습니다. 보다:
https://launchpad.net/+apidoc/1.0.html#branch
답변
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)
-
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