ホーム > タグ > git
git
ukstudio.jpをgitで管理するようにしてみた
- 2008-07-27 (日)
- article
最近流行りのgitを使ってみようかなーってことでとりあえずukstudio.jpを全部gitで管理するようにした。
最終的に以下のような構成になった。
MacBookにgitをインストールする
MacBookにgitをインストールするのは簡単だった。MacPortsですんなり入った。
参考: MacPortsを使ってgitをインストールしてみた – Post-itみたいな
サーバにgitをインストールする
サーバはslicehostのCentOS5.1を使用。インストールされてるsvnが1.4なのでこちらは一旦remove。
$ yum remove subversion
gitはyumの標準リポジトリでは管理されてないので、外部リポジトリ(DAG)を登録してそこからインストールした。
$ wget http://dag.wieers.com/packages/rpmforge-release/rpmforge-release-$0.3.6-1.el5.rf.i386.rpm
$ rpm -ivh rpmforge-release-0.3.6-1.el5.rf.i386.rpm
$ yum install git
リポジトリを作る
とりあえずコミットする人の名前とメールアドレスを登録しないといけないらしいので登録。これはサーバの方も同じ。
$ git config --global user.email yuki.0w0[at]gmail.com
$ git config --global user.name YukiAkamatsu
次にローカルのファイル群をcommitする。
$ cd ~/ukstudio.jp
$ git init
$ git add .
$ git commit -m "first commit"
この状態だとまだローカル内での変更のみ。なので、この変更をサーバ側で受け取れるようにする。
# ukstudio.jpにログインした状態
[ukstudio.jp]$ mkdir /var/git/ukstudio.jp
[ukstudio.jp]$ cd /var/git/ukstudio.jp
[ukstudio.jp]$ git init-db
んで、またローカルに戻ってさっきcommitしたのをpushして反映させる。
$ git remote add ukstudio.jp ssh://ukstudio@ukstudio.jp/var/git/ukstudio.jp
$ git push ukstudio.jp ukstudio.jp master
最後に外部から見れるように配置する。
# ukstudio.jp
[ukstudio.jp]$ cd /var/www/vhost/
[ukstudio.jp]$ git clone /var/git/ukstudio.jp
これで/var/www/vhost/ukstudio.jpが作成されて、そこにずらーっとファイルができてるはず。とりあえずこれでukstudio.jpをgitで管理できるようになった。(と思う)
ローカルで変更を加えてみる
本当にうまく管理できているのか、適当なファイルを作って確かめてみたいと思う。
$ cd ~/ukstudio.jp
$ touch hoge.txt
$ git add hoge.txt
$ git commit -m "commit test"
$ git push ukstudio.jp master
#ukstudio.jp
[ukstudio.jp]$ cd ~/var/www/vhost/ukstudio.jp
[ukstudio.jp]$ git pull
これでhoge.txtがあれば、うまく管理できてることになると思う。
そんな感じで、とりあえずしばらくはgitを使ってみようかなーと思う。「git log -p」とやるとコミットログがdiff付きでみれて便利。
参考
Git ユーザマニュアル(1.5.3以降)
Gitチュートリアル(1.5.1以降)
Gitメモ
せっかちな人のためのgit入門
バージョン管理をsubversionからgitに移行してみた
SSHについて補足
サーバへのSSH接続は鍵認証でやっています。秘密鍵を~/.ssh/id_dsa_ukstudio.jpで保存して、~/.ssh/configに以下のように書いています。
Host ukstudio.jp
IdentityFile ~/.ssh/id_dsa_ukstudio.jp
Protocol 2,1
- Comments: 0
- Trackbacks: 0
Home > Tags > git
- Feeds
- Meta
- Others

