2003-06-04 [長年日記]

[SVN] Subversion

試しに入れてみました。こんな感じで。

# まずレポジトリを作ります
$ svnadmin create c:/home/svn/q3
 
# それから、trunkのディレクトリを作成します
$ svn mkdir file:///home/svn/q3/trunk
 
# ソースアーカイブを置いてインポートします
$ svn import file:///home/svn/q3 q3 trunk/q3
 
# インポート元のファイルを消してチェックアウトします
$ svn checkout file:///home/svn/q3/trunk/q3
 
# $Id:$をキーワード展開するように指定します
$ svn propset svn:keywords Id 
  `/bin/find . \( -name .svn -prune \) -o \
  -type f -print | xargs grep -l '$Id:'`
 
# コミットします
$ svn commit

[SVN] Subversion (2)

svnserveを立ち上げて、svnserve経由でのアクセスもOK。

# デーモンモードで立ち上げ
$ svnserve -r c:/home/svn/ -d
 
# クライアントからアクセス
$ svn checkout svn://localhost/q3/trunk

本当はゲートウェイのsshdを使ってフォワードするようにしようかと思ったのですが、そうするとユーザ認証を行う方法がなくて、anonymousになってしまうようです。svnserve自体をsshd経由で立ち上げることも出来るのですが、そのためにはレポジトリがあるのと同じPCでsshdをあげる必要があります。cygwin環境なのでちょっと面倒そうです。

iptablesでポートフォワード

Pocket PCからプロバイダのPOP3サーバにActiveSync経由でつなぐために、以前はゲートウェイでdelegatedを上げていたのですが、iptablesでやるようにしてみました。

$ iptables -t nat -A PREROUTING -p tcp --dport 10110 \
  -j DNAT --to-destination aaa.bbb.ccc.ddd:110

これでゲートウェイのポート10110にアクセスすると、ISPのPOP3サーバにフォワードされます。

[Q3] 外部エディタ

なんだか中途半端になってしまっていた外部エディタですが、一時ファイルで渡しておいて、そのエディタの終了をチェックし、一時ファイルが書き換わっていたら自動的に取り込むという方向にしたいと思っています。ドラフトはどうしたもんでしょう。やはり何かのヘッダを使うしかないでしょうか。

[SVN] Subversion (3)

ブランチの作り方。

# ブランチ用のディレクトリの作成
$ svn mkdir file:///home/svn/q3/branches
 
# ブランチの作成
$ svn copy file:///home/svn/q3/trunk \
  file:///home/svn/q3/branches/new-branch
 
# チェックアウトしているファイルをスイッチ
$ svn switch file:///home/svn/q3/branches/new-branch/q3

これで新しく作成したnew-branchで作業が出来るようになります。

[SVN] Subversion (4)

ブランチのマージの仕方。

# ブランチでの変更をコミット
$ svn commit
 
# 元のブランチにスイッチ
$ svn switch file:///home/svn/q3/trunk/q3
 
# マージ
$ svn merge -r 8:HEAD file:///home/svn/q3/branches/new-branch/q3
 
# コミット
$ svn commit
 
# ブランチがいらなければ削除
$ svn delete file:///home/svn/q3/branches/new-branch
[]

トップ «前の日記(2003-06-03) 最新 次の日記(2003-06-05)»