多少応用的な内容。一つのファイルを複数のユーザが同時に更新するとどうなるでしょうか。 このときに発生するのが「衝突」と「マージ」です。
マージの例。現在、sandbox/trunk/src/hello/hello.cに対してユーザ「test1」と「test2」が変更を加えています。
test1はヘルプのメッセージを追加したようです。
test2は「!」の数を増やしたようです。
先にtest1がコミットします。
test1視点でtest2が同ファイルに変更を加えていることを知る術がない為、当然何事もなかったように成功します。
次にtest2がコミットします。
コミットに失敗しました。この状態が「衝突」です。最新を取得しろといっているので取得してみます。
自動的にマージされました。改めて差分を確認します。
うまくマージされているようです。これでコミットしてみましょう。
無事コミットできました。