Мы используем ClearCase, используя один поток разработки для нашей команды, без «блокировки» (незарезервированные проверки).
Версия клиента ClearCase: 7.1.1
Версия сервера ClearCase: 7.0.1.2
Мы выполнили тот же тест, не используя «Графическое слияние». Этот вариант работал как положено! Может быть, это может пролить свет на прошлые дефекты ClearCase или обходные пути.
Это означает, что 2 или более человека могут вносить изменения в один и тот же файл одновременно, не дожидаясь, пока файл будет зарегистрирован.
Мы видели несколько случаев странного поведения и немного экспериментировали сегодня, чтобы найти следующий сценарий, который имеет место:
- File.txt проверено 2 членами команды.
- Каждый элемент вносит изменения в файл (в других областях файла).
- Первый разработчик проверяет код в ClearCase, здесь нет проблем.
- Второй разработчик регистрируется, получает всплывающее уведомление о слиянии.
При выборе «графического слияния» ClearCase в этом случае сообщает, что все слияния были выполнены автоматически и от разработчика не требуется никаких дополнительных данных.
Глядя немного дальше, первая регистрация была удалена (удалена), оставив только позднюю регистрацию изменений.
Почему это происходит? Это приводит к тому, что наша команда уже несколько раз теряет код. Мы делаем что-то небезопасное / неправильное?
Редактировать: иллюстрирование проблемы с изображениями вопроса:
Файл Manager.cs находится на версии 27.
Два разработчика проверяют это.
Один внес изменения, зарегистрировался.
Другой регистрируется, получает уведомление о слиянии.
Вот что я вижу в графическом слиянии:
Обратите внимание, что слева - версия 27, в средней версии 28 (последняя проверенная версия), а справа - результат, который отбрасывает изменение кода версии 28!
Почему это происходит автоматически ??
Изображение также можно увидеть здесь: Изображение