Когда я извлекаю файл в ClearCase, он спрашивает меня, хочу ли я извлечь файл «Зарезервировано» или «Незарезервировано». В чем разница между этими типами касс и когда лучше их использовать?
В чем разница между зарезервированной и незарезервированной оплатой?
Ответы (1)
Как упоминалось в "Каковы основные концепции clearcase, которые должен знать каждый разработчик? » ClearCase поддерживает механизм блокировки, который одновременно:
«пессимистичный»: зарезервированная проверка на самом деле не мешает другим людям выполнять свои собственные проверки, но им придется ждать, пока человек, у которого файл был извлечен как «зарезервированный», осуществит проверку. : никто не может зарегистрироваться, пока этот человек не выполнит первую регистрацию (тогда каждый другой пользователь должен будет объединить свою версию с последним зарегистрированным файлом)
Примечание: «зарезервированная» проверка может снять свою блокировку и быть безоговорочными как владельцем, так и администратором;"оптимистичный": незарезервированная проверка, что означает (если никто не использует зарезервированную проверку для одного и того же файла): первая регистрация может сделать это без каких-либо других операций, остальные должны будут объединиться их работа с последним зарегистрированным файлом.
В перспективе, если политика использования:
- Обычно зарезервированная выписка - это нормально, поскольку она позволяет вам вносить изменения с «высоким приоритетом»: они должны быть приняты во внимание в первую очередь.
- Для локальных модификаций, которые не нужно регистрировать сразу, достаточно безоговорочной проверки.
- Для локальных модификаций, которые вообще не нужно регистрировать, достаточно захваченного файла или затмленных файлов (так что вообще никакой проверки)
Примечания:
cleartool checkout/checkin
- это не то же самое, что:
svn checkout
/ _ 3_, которые обновляют рабочий репозиторий содержимым ревизии / фиксации, а не проверяют версия файла: набор файлов вместо одного файла.- "checkin":
svn commit
/git commit
, который зарегистрировал изменения, возможно, нескольких файлов в репо. (удаленный для SVN, локальный для Git), а не создание новой версии для одного файла.
В самом Git не было бы «блокировки файлов» (зарезервированного извлечения). Только система, использующая Git, может предлагать эту функцию, например Git LFS. .