Visual Basic 6.0でレガシープロジェクトを開発/サポートしている間、私のチームはVisual SourceSafeからSubversionに間もなく移行するため、いくつか質問があります。
- Visual Studio6でのSubversionIDE統合に最適なツールは何ですか?(またはそれはトラブルの価値がありません...)
- Visual Basic 6.0でSubversionを使用するためのベストプラクティスはありますか?(無視するファイルの種類など)
Windows Explorer の Tortoise SVN が VB6 で SVN を使用する最良の方法であることに同意します。
SVN への移行でわかる最大の変更点は、「チェックアウト」と「チェックイン」が「更新」と「コミット」とまったく同じではないという考えです。. . したがって、VB6 はチェックアウト/チェックイン メカニズムである MSSCCI をサポートするため、VB6 との IDE 統合は制限されます。Visual Studio 2003 でTamTam SVN ( http://www.daveswebsite.com/software/tamtamsvn/index.shtml ) を使用したことがありますが、制限があることがわかったので使用をやめました。マージ/分岐/非難などは、TamTam にはなかった Tortoise SVN が提供する非常に強力な機能です。Tigris にもhttp://svnvb6.tigris.org/がありますが、試していません。
繰り返しますが、IDE を VB6 で動作させる可能性は十分にありますが、SVN への移行の最大の利点は、チェックイン/チェックアウトのソース セーフの哲学を破ることにあるため、お勧めしません。
Subversion は (チェックイン/チェックアウトではなく) 更新/編集/コミット サイクルを使用するため、バイナリ ファイルには特に注意する必要があります。VB6 のほとんどのフォームは、MyForm.frm と MyForm.frx の 2 つのファイルで構成されています。*.frx ファイルはバイナリであるため、マージできません。
それを考慮して、.frx ファイルの "ロック" を要求するように Subversion を設定します。これは、一度に 1 人だけがファイルをチェックアウトできることを意味します。これにより、一度に 1 人の開発者のみがこれらのファイルを変更できるようになり、その人が現在誰であるかが常に明確になります。これを行わないと、大きな頭痛の種になります。
これらのレガシー プロジェクトでどれだけのことを計画しているかにもよりますが、切り替えないことを検討します。
SVNに切り替えることを強くお勧めします。VSS データベースが破損したためにソース コードが失われたプロジェクトをいくつか知っています。
SourceSafe から SVN への移行を実行するツールがあると思います。(はい、簡単な Google 検索で確認できました。) そうすれば、改訂履歴が失われることはありません。
*.vbw
プロジェクトを閉じたときに自動的に生成され、開いたファイルなどを含むワークスペース ファイル。
MSSCCPRJ.SCC
VB6 IDE によって生成されたソース管理ステータス ファイル (Windows Explorer で SVN を制御するソリューションを使用する場合は、VB6 でソース管理プラグインを無効にする必要があります。これは生成されません)。
*.log
これは、フォーム GUI のロードで問題が発生した場合に生成されるファイルです。ファイルは、フォーム ファイルと同じ名前のフォーム ファイルと同じ場所にあります。
例: MyForm.frm
を生成しMyForm.log
ます。
もちろん、ソース管理に必要なログファイルがない場合にのみこれを行う必要があります...
私の推測では、統合を気にせず、Windows Explorer で Tortoise SVN を使用するだけです。
無視するファイルの種類については、テスト、チェックアウト、ビルドを行い、ファイルが変更されたかどうかを確認します (最近の Visual Studio では、.suo ファイルを無視する傾向があります)。
サーバー側の場合、VisualSVN Server は非常にシンプルなソリューションです。VMware の仮想環境で実行しており、ハミングしています。
あなたがコマンドラインの男なら、私はsvnのコマンドラインインターフェースが本当に好きです。フォルダーのステータスなど、特定のアクションにたどり着くのは亀よりも混乱が少ないと思います。しかし、あなたが探検家のファンなら、ソース セーフな世界から来た亀で十分です。
無視する主な事項は次のとおりです。
これらのレガシー プロジェクトでどれだけのことを計画しているかにもよりますが、切り替えないことを検討します。
レガシ コードを掘り下げるとき、すべての履歴と責任があると非常に役立ちます。SVN は VSS よりもはるかに優れていますが、切り替えると履歴が失われます。
VB6 で多くの進行中の開発を行う場合は、SVN に切り替える価値があるかもしれませんが、今後もそれほど多くのことを行う場合は、プロジェクトを見直す価値がありますか?
私は同様の問題を抱えています.レガシープロジェクトのみがDelphiにあります. それらがVB6にあった場合、保守性のために、VB.Netに「アップグレード」することを検討すると思います。