「バージョン管理システム比較」の版間の差分
ナビゲーションに移動
検索に移動
(→デザイン) |
(→その他) |
||
103行目: | 103行目: | ||
=== その他 === | === その他 === | ||
特になし。 | |||
== 更新履歴 == | == 更新履歴 == |
2011年3月19日 (土) 14:01時点における版
注意 : このページ「バージョン管理システム比較」は、現在書きかけの状態です。完成版に向けて、今後加筆・修正します。また、本ページの内容は全体的な整合性が取れていない可能性があります。 |
本ページは、バージョン管理システムをソフトウェア開発の観点から比較した内容を記述します。
前提条件
- OS : Windows 7 Enterprise 64bit (32bitも可)
- 使用するIDE
- Visual Studio 2010 Profesional : C#
- Pleiades All in One 3.6.2.20110228 : Java
- GUIフロントエンドを優先的に使用
比較対象
- Subversion
- TortoiseSVN-1.6.14.21012-x64-svn-1.6.16.msi
- Git
- Git-1.7.4-preview20110204.exe
- Tortoisegit-1.6.5.0-64bit.msi
- Mercurial
- TortoiseHg 2.0.2 with Mercurial 1.8.1 - x64 Windows
- Bazaar
- bzr 2.3.1(Standalone版インストール)
比較結果
Subversion連携
- Git
- git-svn(Gitインストール時に付属)
- クローン時のコマンド(例) :
- git svn clone svn://localhost:8001/test01
- Mercurial
- hgsubversionをインストール
- Bazaar
- チェックアウト・コミット・プッシュは、特にSubversionであることを意識せず操作可能
特記事項
- Gitのクローン時のコマンドを「git svn clone file:///c:/work/svn-repos」とすると、「(前略)Expected FS format '2'; found format '4'(以下略)」と出て操作が失敗します。git-svnで扱えるSubversionファイルシステムのバージョンが古いためにエラーが出たと推測します。
- Mercurialのクローン元URLを「C:\...」と指定すると失敗するので「file:///C:/...」とする必要があります。
バイナリファイルに対する操作性
バージョン管理されているバイナリ(非テキスト)ファイルの、過去の履歴を閲覧するときの操作性に関する比較です。
- Git
- TortoiseGitの「Show log」画面の下部から、過去のバイナリファイルを関連付けされたアプリケーションで直接開ける
- UIがTortoiseSVNに近い
- Mercurial
- 過去のバイナリファイルはWindowsメモ帳でしか開けない。
- メモ帳で開いたファイルをそのまま保存してもファイルが破損していて開けない。
- リビジョンごとのエクスポートで代替するしかない
- 過去のバイナリファイルはWindowsメモ帳でしか開けない。
- Bazaar
- QBzrの履歴の「ファイル表示」を選択しても、専用ビューアが開き、外部保存および関連付けされたアプリケーションによる表示はできない
日本語ファイル名・ディレクトリ名の取り扱い可否
Subversionでは特に問題なく使用できた日本語ファイル名・ディレクトリ名が、特にGit・Mercurialでは問題が出てきます。
調査がかなり中途半端なので、後日追加調査します。
- Git
- ディレクトリ名は文字化けする
- 影響範囲は要調査
- ファイル名は問題無し
- ディレクトリ名は文字化けする
- Mercurial
- 日本語ディレクトリの取り扱い不可
- コミット時、「abort: 指定されたパスが見つかりません。」と表示される。
- RedmineからMercurialリポジトリ参照時、日本語ファイル名に対するリンクが消える状況が発生
- 日本語ディレクトリの取り扱い不可
- Bazaar
- 特に問題なし
- エラー発生時のダイアログ(何のエラーかは失念)に出力されるメッセージに含まれる日本語パスが文字化けしているが、影響不明
日本語を含む作業用ディレクトリ名
IDE連携
(調査中)
名前 | Visual Studio 2010 | Eclipse 3.6 (pleiades) | 備考 |
---|---|---|---|
Subversion | |||
Git | |||
Mercurial | |||
Bazaar |
その他
特になし。