共同作業を効率良く行うために C++Builderで作成するコピーツール
小薗 光典 ソースのダウンロードはここから(237KB) |
RADツールにおける開発の形態
共有ディスクに置いたプロジェクトを,2人以上で同時に開発/デバッグを行う場合のことについて考えてみましょう.
1人目がテスト実行した時点で,実行形式であるEXEファイルが占有されます.このとき2人目がソースの修正を終え実行しようとすると,コンパイル/リンクが走りEXEファイルを出力しようとします.ところが,このEXEファイルは,1人目が現在テスト実行中で占有しているため,リンカーはEXEファイルを作成できない旨のエラーメセージを出力して終了します.
お互いに分担というものがあるため,同一ファイルを同時に編集することはないと思いますが,このような開発形態はとても危険です.
常識的な形態として,サーバー上の共有ディレクトリにマスタープロジェクトを置き,それぞれがこのコピーをローカルディスク上に置きます.各人はそれぞれ自分の分担をローカルディスク上で開発/テストを行い,一定のレベルに達したと判断して時点でサーバーのマスターにアップし,ほかのメンバーが上げた最新のファイルをローカルにダウンするという繰り返しになるはずです.プロジェクトにファイルを追加する場合や,総合的なテストはマスターディレクトリ上で行う必要があります.
そこで,サーバー上のマスターディレクトリ内のファイルと,ローカルディレクトリ内のファイルにおいて,それぞれ古いものを新しいものにコピーするツールがあれば便利です.
ずいぶんともったいぶった前置きでしたが,結局二つのディレクトリ間で同名のファイルに対して新旧判定,内容比較,コピーを行うツールということになります.
コピーツールの機能
必要な機能としては,古い/新しい/同じが一目瞭然で,それらのファイルが指定によりコピーできることです.このとき,どのように違うかFC(ファイルコンペア)ユーティリティの結果により確認後にコピーしたいのが人情というものです.さらに可能であれば,コピーの前に「ごみ箱」に移動してからコピーするようにします(フロッピやネットワークドライブのファイルはごみ箱に移動できない).
今回作成するコピーツールの画面を,図1に示します.Explorerを上下に2つ並べたような画面で,上下のツリービューにてそれぞれのディレクトリを指定します.右側のリストビューには,そのディレクトリ配下のファイルが表示されます.ファイル名の前に表示されるアイコンの意味は,バージョン情報ダイアログで説明されています.バージョン情報ダイアログを図2に示します.
以下略
copyright 1999 小薗 光典