launchpad.net

https://launchpad.net/ はバージョン管理システムbazaarを使ってオープンソースプロジェクトを多数ホスティングしているウェブサービス。

git 学習者が github を経験することで「gitはこう使うのか」という気づきを得るように、 bazaar を学ぶなら launchpad を経験するのがよいのではないか。

https://launchpad.net/bzr

ubuntu 9.04 で launchpad.net を使うためには PPA による bazaar の更新が必要。

nvdajp 開発における launchpad の利用については nvdajp_bazaar

ブランチの参照

since 2011-01-04

bazaar に launchpad プラグインが入っていると、lp: で始まる URL でリポジトリを参照できる。

lp:~UserName/ProjectName/BranchName という命名が一般的らしい。

シナリオ:

  • bzr init-repo して「共有リポジトリ」の準備をする。
  • lp:~User1/Project1/Branch1 を User2 がローカルマシン(共有リポジトリの中)に bzr branch する。作業ディレクトリを Project1_Branch1 とする。
  • この Project1_Branch1 を bzr push すると lp:~User2/Project1/Branch1 になる。
  • この状態で Project1 のブランチ一覧を見ると、lp:~User1/Project1/Branch1 と lp:~User2/Project1/Branch1 があることを確認できる。
  • 共有リポジトリの中で bzr branch して 作業ディレクトリ Project1_Branch2 を作る。
  • bzr push して Project1_Branch2 を launchpad に送る。これが lp:~User2/Project1/Branch2 になる。

ソースを共有する

以下、bazaar を使って nvdajp のソースを共有する準備作業について述べる。

まず各ユーザが id_rsa.pub を登録する。以下の作業は cygwin で実行している。

リポジトリを落とす。

bzr launchpad-login nishimotz
bzr branch lp:nvdajp
cd nvdajp
bzr info

新しいファイル(コミット)を追加する。

echo "this is test" > readme_nvdajp.txt
bzr add readme_nvdajp.txt
bzr commit -m "comment"

ローカルの新しいリビジョンをpushする。

bzr push lp:nvdajp

launchpad側でコミットされたものを取ってくる。

bzr pull
bzr update

現状確認

$ bzr info
Standalone tree (format: 2a)
Location:
  branch root: .

Related branches:
    push branch: bzr+ssh://bazaar.launchpad.net/~nvdajp/nvdajp/main/
  parent branch: bzr+ssh://bazaar.launchpad.net/~nvdajp/nvdajp/main/

SSHの鍵ファイル

Windows 8 にて。

c:\Users\(username)\.ssh

に id_rsa.pub と id_rsa を置く。

cygwin ssh-key を Win32 版で使う

since 2011-07-05

Windows 7 (x64) での作業記録。

cygwin 1.7.9-1 で OpenSSH パッケージをインストール。

cygwin bash にて:

$ ssh-keygen -t rsa

RSA 2048 という模様が出てくる。引き続き cygwin bash にて:

$ cd /home/nishimotz/.ssh
$ mkdir c:/Users/nishimotz/.ssh
$ cp id_rsa c:/Users/nishimotz/.ssh
$ cp id_rsa.pub c:/Users/nishimotz/.ssh # これは必要ないかも。

引き続きキーの登録。

$ cat id_rsa.pub

これを範囲指定してコピー。

ブラウザで http://launchpad.net/~ユーザ名/+editsshkeys に追加。

ユーザ名@マシン名には改行が入らないほうがよいが、他は気にしなくてよさそう。

今度はコマンドプロンプトで:

C:\Users\nishimotz>bzr launchpad-login nishimotz
   2kB     0kB/s /

bzr branch lp:~nishimotz/…/… すると

Connected (version 2.0, client Twisted)
Authentication (publickey) successful!

のように表示される。

うまくいっていない場合:

Connected (version 2.0, client Twisted)
Authentication (publickey) failed.
bzr: ERROR: Connection error: Unable to authenticate to SSH host as
  nishimotz@bazaar.launchpad.net
supported auth types: ['publickey']

この場合は id_rsa.pub のインポートをやり直す。

覚え書き

ブランチを購読する

https://code.launchpad.net/~nvdajp/nvdajp/main

ログインして右上の "subscribe yourself" を実行

Junkブランチとは

疑似プロジェクト名 "+junk" はプロジェクトに属さないブランチを登録するときに使える。

https://help.launchpad.net/NonProjectBranches

Junk ブランチを作るには:

bzr push lp:~nishimotz/+junk/BRANCHNAME

階層ブランチをpushする

since 2012-02-29

いままで lp:~nishimotz/nvdajp/releases_2011.3 のようなブランチを push していたが、releases/2012.1 の方がいいので試した:

>bzr push lp:~nishimotz/nvdajp/releases/2012.1
bzr: ERROR: Permission denied: "~nishimotz/nvdajp/releases/2012.1/": 
: Cannot create branch at '/~nishimotz/nvdajp/releases/2012.1'

エラーになった。先に nvdajp/releases を作っておく必要があるのか、階層を深くすることができないのか。。

>bzr push lp:~nishimotz/nvdajp/releases_2012.1
launchpad.net.txt · 最終更新: 2013/01/22 19:23 by Takuya Nishimoto
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0