«前の日記(2011-07-31(日)) 最新 次の日記(2011-08-02(火))» 編集
RSS feed

からっぽの日記


2011-08-01(月) [長年日記]

tDiary を git で管理・更新していく その2

昨日書いた方針に基づき作業をしたのでメモ。まだよくわかっていない。fetch、merge はまだ試していないので次の更新がうまくいくかはまだわからない...

tdiary の取得(テスト環境)

github から tdiary 本体と contrib を取得する。

$ mkdir -p ~/local/tdiary
$ cd ~/local/tdiary
$ git clone git://github.com/tdiary/tdiary-core.git core
$ git clone git://github.com/tdiary/tdiary-contrib.git cntrib

公式リポジトリの設定(テスト環境)

公式と同期をとるためにリモートリポジトリ official を設定する。

本体

$ cd ~/local/tdiary/core
$ git remote add official git://github.com/tdiary/tdiary-core.git
$ git remote -v
official        git://github.com/tdiary/tdiary-core.git (fetch)
official        git://github.com/tdiary/tdiary-core.git (push)
origin  git://github.com/tdiary/tdiary-core.git (fetch)
origin  git://github.com/tdiary/tdiary-core.git (push)

contrib

$ cd ~/local/tdiary/contrib
$ git remote add official git://github.com/tdiary/tdiary-contrib
$ git remote -v origin
official        git://github.com/tdiary/tdiary-core.git (fetch)
official        git://github.com/tdiary/tdiary-core.git (push)
origin  git://github.com/tdiary/tdiary-core.git (fetch)
origin  git://github.com/tdiary/tdiary-core.git (push)

自分用のブランチ作成と設定を追加(テスト環境)

作成したブランチに下記のファイルや自作テーマなどをコピーしながら、git add と git commit を実行する。

ブランチを作成する。以下、ブランチで作業する。

$ cd ~/local/tdiary/core
$ git branch sakura
$ git checkout sakura
Switched to branch 'sakura'

$ git branch
  master
* sakura

section_footer2.rb 用に json.rb をコピー

$ cd ~/temp
$ wget http://www.ping.de/~flori/json-1.5.3.tgz
$ tar zxf json-1.5.3.tgz
$ cp -rp json-1.5.3/lib/* ~/local/tidary/core/misc/lib/
$ cd ~/local/tidary/core
$ git add misc/lib/json.rb
$ git commit

contrib/js にシンボリックリンクを作成する

$ cd ~/local/tdiary/core/js
$ ln -s ../../contrib/js/* .
$ git js/draft.js js/flickr.js js/jquery.socialbutton.js js/picasa.js js/socialbutton.js js/yahoo_kousei.js
$ git commit

contrib 以外に追加したプラグインを git で管理

$ mkdir ~/local/tdiary/other-plugin
$ cd ~/local/tdiary/other-plugin
$ git init

作成したディレクトリにプラグインをコピー後、

$ git add hogehoge.rb
$ git commit

さくらレンタルサーバに共用リポジトリを作成(レンタルサーバ)

さくらレンタルサーバにログインし、共有リポジトリ*1を作成する。

本体用

$ mkdir -p ~/var/git/tdiary-core.git
$ cd ~/var/git/tdiary-core.git
$ git --bare init
Initialized empty Git repository in /home/username/~/var/git/tdiary-core.git/

contrib 用

$ mkdir -p ~/var/git/tdiary-contrib.git
$ cd ~/var/git/tdiary-contrib.git
$ git --bare init
Initialized empty Git repository in /home/username/var/git/tdiary-contrib.git/

その他追加したプラグイン用

$ mkdir -p ~/var/git/tdiary-other-plugin.git
$ cd ~/var/git/tdiary-other-plugin.git
$ git --bare init
Initialized empty Git repository in /home/username/var/git/tdiary-other-plugin.git/

ローカルリポジトリの内容を共用リポジトリに反映(テスト環境)

本体

$ cd ~/local/tdiary/core
$ git remote rm origin
$ git remote add origin ssh://username@hostname/~/var/git/tdiary-core.git
$ git remote -v
official        git://github.com/tdiary/tdiary-core.git (fetch)
official        git://github.com/tdiary/tdiary-core.git (push)
origin  ssh://username@hostname/~/var/git/tdiary-core.git (fetch)
origin  ssh://username@hostname/~/var/git/tdiary-core.git (push)
$ git push origin sakura

contrib

$ cd ~/local/tdiary/contrib
$ git remote add origin ssh://username@hostname/~/var/git/tdiary-contrib
$ git remote -v
official        git://github.com/tdiary/tdiary-contrib (fetch)
official        git://github.com/tdiary/tdiary-contrib (push)
origin  ssh://username@hostname/~/var/git/tdiary-contrib (fetch)
origin  ssh://username@hostname/~/var/git/tdiary-contrib (push)
$ git push origin master

その他追加したプラグイン

$ git remote add origin ssh://username@hostname/~/var/git/tdiary-other-plugin
$ git remote -v
origin  ssh://username@hostname/~/var/git/tdiary-other-plugin.git (fetch)
origin  ssh://username@hostname/~/var/git/tdiary-other-plugin.git (push)
$ git push origin master

さくらレンタルサーバ上でチェックアウト(レンタルサーバ)

$ mkdir -p ~/local/tdiary
$ cd ~/local/tdiary
$ git clone file:///home/username/var/git/tdiary-core core
$ git clone file:///home/username/var/git/tdiary-core core
$ cd ~/local/tdiary/core
$ git checkout -b sakura origin/sakura

公開用ディレクトリの設定(レンタルサーバ)

$ mkdir ~/www/diary
$ cd ~/www/diary

index.rb を作成

#!/usr/bin/ruby
require '/home/hoge/local/tdiary/core/index'

update.rb を作成

#!/usr/local/bin/ruby
require '/home/hoge/local/tdiary/core/update'

パーミッションの設定

$ chmod 755 index.rb
$ chmod 755 update.rb

テーマと Javascript 用のシンボリックリンク作成

$ ln -s /home/username/local/tdiary/core/js .
$ ln -s /home/username/local/tdiary/core/theme .

プラグインのパス設定(tdiary.conf に追記)

@options['sp.path'] = [
    '/home/hoge/local/tdiary/core/misc/plugin',
    '/home/hoge/local/tdiary/contrib/plugin',
    '/home/hoge/local/tdiary/other-plugin',
]

*1 共有というか自分専用ですが^^;


«前の日記(2011-07-31(日)) 最新 次の日記(2011-08-02(火))» 編集
RSS feed