本当は怖いHPC

HPC屋の趣味&実益ブログ

サクラのレンタルサーバーでgitを使う

最近gitが素敵で、rubyforgeに登録した新しいプロジェクトでもgitを選択してしまった。

ボクは自分の趣味用のSubversionリポジトリをサクラのレンタルサーバーに置いているのだが、そのリポジトリをgitに移行することにした。

git → subversionのデータ移行を期待した方には申し訳ないのだけど、ボクは過去の作業ログなど一切必要ないし、Subversionリポジトリもすぐに消すわけではないので、この作業はしなかった。とりあえずgitで新しいリポジトリを作り、更新頻度の高いものからgitに移行することにした。

で、お決まりの作業ログ。これは頻出事項だけど、サクラのレンタルサーバーは普通にシェルが使えるので、自分のホームディレクトリ下にインストールしてPATHを通してしまえば、普通にプログラムのインストールができる。

今まで普通にプログラムをビルド&インストールした経験のある人にとっては無問題だけど、makeするときに明示的にgmakeを実行しなきゃいけないという点が1つだけ注意事項。

というわけで

### sakuraサーバー
% wget http://kernel.org/pub/software/scm/git/git-1.5.5.1.tar.bz2
% tar -xjvf git-1.5.5.1.tar.bz2
% cd git-1.5.5.1
% ./configure --prefix=$HOME/local
% gmake  # gmakeでないと駄目
% gmake install

### $HOME/local/bin をPATHに通すのを忘れずに

% cd $HOME
% mkdir repos.git
% cd repos.git
% echo "This is my git repository" > README
% git add README
% git commit -m "first commit"
Created initial commit f37d990: first commit
 1 files changed, 1 insertions(+), 0 deletions(-)
 create mode 100644 README

# 自分のマシンに戻ってくる
$ git clone ssh://youraccount@your.sakura.domain/home/youraccount/repos.git repos
Initialized empty Git repository in /home/fukuda/devel/repos/.git/
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Indexing 3 objects...
 100% (3/3) done

$ cd repos
$ cat README
This is my git repository

$ echo 'Second Commit!' >> README
$ git add README
$ git commit -m "second commit"
Created commit 7e1fb2d: second commit
 1 files changed, 1 insertions(+), 0 deletions(-)

$ git push origin
updating 'refs/heads/master'
  from d3568da7b6a00e8ac802da1477a07ed1194ef34c
  to   dc04fd100fab888b0facd5cfab6b92af132fef6c
 Also local refs/remotes/origin/master
Generating pack...
Done counting 3 objects.
Deltifying 3 objects...
 100% (3/3) done
Writing 3 objects...
 100% (3/3) done
Total 3 (delta 0), reused 0 (delta 0)

あっさり成功。

gitは奥が深い。これからもっと勉強してみる。

【広告】