$shibayu36->blog;

株式会社はてなでエンジニアをしています。プログラミングや読書のことなどについて書いています。

gitを使ってみたまとめ(5)

 前回は履歴を使った作業についてでした。今回はリモートリポジトリを使った作業についてです。


1.gitで使えるプロトコル
 gitでは、SSH、git、HTTP/HTTPSのプロトコルが使用できる。SSHはセキュリティ重視の場合に、gitは速度重視の場合に、HTTP/HTTPSはファイアウォールなどの制限がある場合に使う。これらを組み合わせることも可能だ。

 SSHの場合、次のような接続の仕方になる。

user@server.com:hoge/hogehoge.git
ユーザ名、サーバ名、リポジトリへのパスと言った具合だ。おそらくuserの後にパスワード指定も出来る。

 gitの場合、次のような接続の仕方になる

git://server.com/hoge/hogehoge.git
サーバ名とリポジトリへのパスを書く。この場合、匿名での接続となる。

 httpの場合、次のような接続の仕方になる。

http://server.com/hoge/hogehoge.git


2.リモートリポジトリのクローン作成
 クローンの作成にはgit cloneコマンドを使う。どのリポジトリのクローンをとるか、という指定は上で書いたような指定方法を使う。
$git clone git://server.com/hoge/hogehoge.git


3.リモートリポジトリのpullとpush
 リモートリポジトリから変更をとってきて同期するには、
$git pull (リモートリポジトリ名) (ブランチ名)
で、リモートリポジトリの変更点を自分のローカルリポジトリにマージすることが出来る。

 リモートリポジトリへ変更を送りたい場合は、

$git push
$git push (リポジトリ名) (送りたいブランチ):(プッシュ先のブランチ)
とする。git pushコマンドのみの場合は、そのリポジトリのリモートブランチに変更を送ると推測し、それを実行する。


4.リモートリポジトリの追加
 リモートリポジトリに名前をつけることが出来る。以下のコマンド。
$git remote add hoge git://hoge.com/hogehoge.git
これによって、
$git pull hoge HEAD
のようにして、変更を取得することが出来るようになる。