git の凄いところをGit 入門の Git とはを参考にさせて頂き、要点を挙げさせて頂きます。
- 分散型のバージョン管理システムである
- Linux kernel の開発で培われたノウハウが凝縮された高機能なバージョン管理システムである
分散型について意味が分からなかったのですが、書いてありました。
プロジェクトのメンテナにリポジトリの編集権限を付与してもらわなくても、 各ユーザが自由に自分専用のリポジトリを持てることが一番のメリットではないかと思います。
Git を Mac にインストール
git を Mac にインストールします。git のインストール方法はたくさんあります。
- コマンドを叩いてインストールする
- git のインストーラーを使う
- MacPorts を使ってインストールする
この中で作業量的に一番最速なのは MacPorts を使う方法です。インストールまでにかかる時間が最も短いのはコマンドを叩いてインストールする方でしょうか。インストーラーは試していないので分かりません。
もし既に MacPorts を入れていなかったら以前私が書いたの MacPorts のインストール記事を参考に入れてみてください。入れたら以下のようにコマンドを実行してください。
1 | sudo port install git-core |
/opt/local/bin/git で git を使えます。パスを確認して /opt/local/bin が追加されてるか確認しましょう。
1 | echo $PATH |
はじめての Git リポジトリを使ってみよう
初めての git です。svn とどれくらい違うんでしょうか。以下のページを参考にして頂き私なりに解釈して説明させて頂きます。
- せっかちな人のための git 入門 – git をインストールし、共同で開発できる環境を整えるまで : 僕は発展途上技術者
- 分散バージョン管理システムGitの使い方入門 – SourceForge.JP Magazine : オープンソースの話題満載
- git – H_Yamaguchiのサイト
まずローカルリポジトリを作成する
既にファイルがあるディレクトリに行って以下のコマンドを実行。
1 2 | cd ~/Dropbox/Sites/weble.org/www git init |
これで .git というディレクトリができます。この時点ではリポジトリにファイルは入っていませんので、リポジトリにファイルを入れてあげます。やり方が正しいかは少し分かりませんが、以下のような感じで全て追加しちゃいます。
1 2 | git add * git commit -m 'message' |
svn との違いは svn は変更したファイルは svn commit すれば自動的にコミットされてましたが、git は明示的に add をする必要があります。
以上な感じでローカルリポジトリは完了です。svn みたいに各ディレクトリに .svn ファイルができないので管理しやすいですね。トップディレクトリのみに .git ファイルができます。
リモートリポジトリを作る
個人で使う分にはローカルリポジトリだけで良いですが、みんなでやる場合においてはリモートリポジトリを作る必要があります。人によってここは違いますね。私の場合は今回は Dropbox 内なので以下のような感じになります。
1 2 3 | mkdir ~/Dropbox/remote/weble.org.git cd ~/Dropbox/remote/weble.org.git git --bare init |
リモートリポジトリを作りましたら、次にこのリモートリポジトリにローカルリポジトリの内容を反映させます。ローカルリポジトリに移動してもらって、以下のようにコマンドを打てば終了です。
1 | git push ~/Dropbox/remote/weble.org.git |
また何度もやる場合は以下のように git remote add origin すると良いです。
1 2 | git remote add origin ~/Dropbox/remote/weble.org.git git push origin master |
git push でも git push origin でもできました。
リモートリポジトリの内容をローカルリポジトリに反映させる
svn で言うと svn update のところですね。先ほど git remote add origin してあれば単に以下のように書けば pull できます。
1 | git pull origin master |
しかし、もし登録してなければ以下のようにパスを直接指定して pull することもできます。
1 | git pull ~/Dropbox/remote/weble.org.git |
コメント