はじめに
bitbucket便利ですよね!
ただ、毎回ブラウザでbitbucketにログインして新規リポジトリを作って、
今度はlinuxでgitコマンド。。。とやっていると面倒なので
新規リポジトリを作るところからコマンドでやってしまおうというメモです。
※追記※
Bitbucketについては3つの関連に分けて書きました。
登録とかBitbucketのwebで新規リポジトリ作るのはこのへんをご参考に。
ながれ
1. linux側でREST APIでリポジトリ新規作成
まずはこのあたりを参考にしました
- 公式ドキュメント
- Bitbucket 日本語ドキュメント Repositories
- Bitbucket REST APIでターミナルから新規リポジトリ作成
※今回は2.0のapiだとうまくいかなかったので1.0でやります
リポジトリ新規作成REST API
参考サイトの2.0のapiだとうまくいかなかったので1.0でやりました。
基本はこんな感じ
curl --request POST --user [ユーザ名]:[パスワード] https://api.bitbucket.org/1.0/repositories/ --data name=[新規リポジトリ名] --data scm=git --data is_private=true または curl --request POST --user [ユーザ名] https://api.bitbucket.org/1.0/repositories/ --data name=[新規リポジトリ名] --data scm=git --data is_private=true ※2.0のやり方は時間なかったので特に調べてません ※パスワードは入れなければ聞かれるので自分的にはそちらのほうが好き
実際やってみる
- api叩く
# curl --request POST --user hoge https://api.bitbucket.org/1.0/repositories/ --data name=testRepo --data scm=git --data is_private=true Enter host password for user 'hoge':
- 確認してみる
上部メニューのBitbucket
をクリックしてTOPページに行くと
DashboardにtestRepo
リポジトリが作成されているのがわかります。
また、右側の最近の活動
にも表示されています
スクリプト登録してみる
参考サイトにもありますが、毎回長いAPI打つのは大変なのでコマンド化してみます。
自分もzsh使っているので/home/hoge/.zshrc
を編集します。
bashの人は.bashrcにどーぞ。
- コマンド化→コマンド叩いてみる
$1
はコマンドの第一引数を変数として使っています
※ .zshrc編集。crと打ったらcreate repositoryするようにしてみる # vi /home/hoge/.zshrc ---- vi追記 ---- function cr() { curl --request POST --user hoge https://api.bitbucket.org/1.0/repositories/ --data name=$1 --data scm=git --data is_private=true } ---------------- ※ 設定反映 # source /home/hoge/.zshrc ※ コマンド打ってみる # cr testRepo2 Enter host password for user 'hoge':
- 確認してみる めでたくリポジトリが作成されました
2. リポジトリ新規作成からの適当なファイルをcommit&pushしてみる一連
これでコマンド側でリポジトリの新規作成もできるようになったので
改めて一連をやってみます
bitbucketにリポジトリ新規作成
# cr testRepo3 Enter host password for user 'hoge':
linuxにローカルリポジトリ作成
リポジトリの新規作成だけではbitbucket上にリポジトリ作っただけなので
linux上にローカルリポジトリの場所やらを作ります
※ ディレクトリ作成&移動 # mkdir -p /home/hoge/bitbucket/testRepo3 # cd /home/hoge/bitbucket/testRepo3 ※ お決まりの初期化 # git init Initialized empty Git repository in /home/hoge/bitbucket/testRepo3/.git/ # git remote add origin git@bitbucket.org:hoge/testRepo3.git
commit&push
commitとpushは前回と同様、
ファイル作ってaddしてcommitしてpushというお決まりの流れです
# echo 'tekitou' > tekitou.txt # git add tekitou.txt # git commit -m 'first commit' # git push -u origin master Enter passphrase for key '/home/hoge/.ssh/id_rsa_bitbucket': Counting objects: 3, done. Writing objects: 100% (3/3), 213 bytes, done. Total 3 (delta 0), reused 0 (delta 0) To git@bitbucket.org:hoge/testRepo3.git * [new branch] master -> master Branch master set up to track remote branch master from origin.
確認
webのbitbucket上で確認してみます
- 上部メニューの
Bitbucket
リンクからTOPに移動
作成したtestRepo3
リポジトリを選択
- 左サイドメニューの
ソースアイコン
クリック
- こんな感じで作成した
tekitou.txt
が追加されたのが確認できます
まとめ
これでlinuxやmacのコマンドライン上のみでbitbucket使うことができるようになりました!
enjoy!\(^o^)/