git-svnについてちょっと理解した

今年度に入って,やっと研究室で作ったツールをバージョン管理しだした.
サーバにはSubversionを選択したけど,コミットがいきなりサーバで公開されるのはちと恐い.

そこでローカルでは git を使うことにした.
gitでは,コミットは基本的に自分だけのリポジトリへ行い,サーバへは明示的にしないかぎり,コミットしない.
だから色々失敗しても大丈夫.

今回は,gitでSubversionリポジトリをあつかうための自分用メモ
gitのバージョンは1.6.1

$ git --version
git version 1.6.1

リポジトリのコピー

まずは,git-svnを使ってサーバからリポジトリをコピーする.

$ git-svn clone -s http://svn.repository/svn/hoge hoge

これで,今のディレクトリに hogeという名前でコピーされる
ただし,Subversionみたいにtagやbranch,trunkといったフォルダがあるわけではなく,いきなりsvnで行った直近のコミットの内容が入っていた.

branchとtagの扱い

そこで,trunkの内容をローカルに取ってきて,branchの一つに登録しておく.

$ git checkout -b local-trunk trunk

すると,これからは

$ git checkout -f local-trunk

とすることで,trunkの内容が再現できる.リモートとローカルを同じ名前にしてしまうと,

warning: refname 'trunk' is ambiguous.

と警告がでた.この警告の影響まで調べきらなかったけど,違う名前にすると出なかったので,とりあえずはOKということにした.


同じような要領で,tagsの内容もローカルへ取ってきて,tagに登録する

$ git checkout -b 1.0 tags/1.0
$ git tag 1.0

tagに全て入れたら,同じ内容のbranchは不要と考え,消した.

$ git branch -d 1.0

今日はここまで!

あとちょっとわからないことは,git svn rebaseしたときの挙動かな.
local-trunkやtagの内容もアップデートされるのかな.

EmacsでC-f C-c C-x C-fしたときの初期値

Windowsで使用しているEmacsで、最初にC-c C-f C-x C-f (2008/12/2 修正)(find-file)すると、

Find file: C:\local\emacs\22.2\bin/

と、Emacsのバイナリがある場所が表示される。
これでは自分のドキュメントからはめちゃくちゃ遠いので困っていた。

その解決法は、自分の設定ファイル(.emacs)に以下を追加すればOK。

(cd "~/")

#ここの更新も約半年ぶり!?

Opera9.5リリース

ウェブブラウザの1つである Opera9.5 がリリースされました。

めちゃくちゃ速いということなので、インストールしてみると…

たしかに速い!

すくなくとも、Fx3 + vimperator よりは体感速度が速い。
addonを入れた状態と比較するのはフェアじゃないかもしれないけど、
vimperatorの操作感を捨ててもいいかなと思えるくらいだった。

もうちょっと使ってみよう。

vim-latex で気付いたこと

\begin{...} ... \end{...}が,すぐ入力できる.

入力モードで EIT と打つと,

\begin{itemize}
  \item
\end{itemize}<++>

まで入力されて,カーソルは \item の後にくる.
二つめのアイテムを入力するには,+i でできた.

他にもいろいろあるけど,まだまだヘルプファイルが手放せない…