[cvs-jp-info 201] Re: 編集中のソースのロックは可能?

Back to archive index

池上俊二 shunji_ikega****@ameth*****
2003年 7月 15日 (火) 23:19:47 JST


http://www.sodan.org/~penny/vc/cvs-ja_10.html#SEC95に

-----8<----- cut here ----->8-----
10.7 独占取得と無条件取得の選択

独占取得、無条件取得それぞれに一長一短があります。 ここでは、この問題を
簡単に説明しますが、 残りの多くは個人的な見解の相違や、 各グループの作業
スタイルの相違だと思います。 開発者チームを構成するには様々な方法があり
ます。 CVS は特定の構成を強制せず、 各々を実現する機能を提供するだけです。

独占取得には、非常に非生産的な部分があります。 二人が同じファイルを編集
する場合でも、編集部分が異なる場合には、 どちらか一方の編集を禁止する必
要は全くありません。 また、ファイルを編集するためにロックした後、 ロック
解除を忘れてしまうことが、普通に起こり得ます。

独占取得に特別な安心感を持つ人々は、 無条件取得を用いた場合の衝突の多さ
や、 それを解決する困難さをよく訴えます。 しかし多くのグループの経験から
言うと、 衝突は稀であり、解決も普通は比較的簡単なものです。

衝突は2人の開発者がコードの与えられた部分の適切な設計について 意見が食い
違っているときにのみ起こることを理解するまで、 深刻な衝突の発生の少なさ
は驚きでしょう。 このような衝突は、そもそもチーム内での意思疎通が上手く
行っていないこと を示しています。 どのようなソース管理方法を採るにして
も、 開発者が共同で作業する際には、 システム全体の設計方針に従わなければ
いけません。 きちんと従っていれば、簡単にマージできる重複ばかりになるで
しょう。

無条件取得が、全く不適当な場合があります。 管理下にあるファイルの形式を
マージする道具が無く (例えばワード・プロセッサによるファイルや、 CAD プ
ログラムで編集されたファイル等)、 マージ可能なデータ書式を使用するように
プログラムを変更できない場合、 悪夢のような衝突解決をするよりは、 普通は
独占取得を用いて簡単に衝突を避けたほうが賢明でしょう。

上の 10.6 ファイル編集者の追跡機構 で記述された監視機構は、 独占取得と無
条件取得の中間的なものと考えられます。 ファイルを編集する前に、 他の誰が
ファイルを編集中なのか調べることができます。 これは単純に双方の同時編集
を禁止するのではなく、 現況を報告し、それが問題かどうかは自分で判断して
もらいます。 これを適切に使用すれば、 独占取得と無条件取得の中でも最善の
選択となるでしょう。
-----8<----- cut here ----->8-----

とあります。
10.6 ファイル編集者の追跡機構
も参考になると思います。

私も社内でcvsを使おうというときに、ソースのリビジョン管理をしないグルー
プとVSSを使っていたグループからいろいろ質問をされてうまく答えられません
でした。

だいぶ後になってこのhomepageを見つけたしだいでして、ここを見てもらえば良
い答えになったと思っています。






CVS-JP-info メーリングリストの案内
Back to archive index