Мы настроили наш собственный рабочий процесс Mercurial, который отлично работает для нас. Однако меня интересует кое-что: возможно ли создать какой-нибудь «мусорный» репозиторий, который в основном был бы местом, где каждый пользователь всегда мог бы «нажать -f» для своих наборов изменений и где мы бы никогда ничего не делали, кроме «push -f»
То есть: целью этого хранилища будет , а не , чтобы интегрировать / объединить / вытащить. На самом деле это будет не частью нашего рабочего процесса. Это действительно было бы «место для резервного копирования всех наборов изменений».
Единственный момент, когда мы извлекаем из него набор изменений, это если у пользователя произошел сбой жесткого диска или кража, и у него были наборы изменений, которые он «толкнул -f» в это гипотетическое «резервное копирование наборов изменений», но не в хранилище ( и) часть нашего реального рабочего процесса (было бы много причин, по которым это могло бы произойти: одна из них заключалась в том, что поддерживать всегда доступный «непроверенный» хранилище нежелательной почты всегда было бы очень легко).
Я только что выполнил тест с тремя пользователями, выполняющими «push -f», и теперь это выглядит следующим образом (обратите внимание, что родительский элемент рабочего каталога остается в самом низу, в наборе изменений 0, и навсегда остается там):
$ hg glo | grep -v user: | grep -v date
o changeset: 3:4337a665659f
| tag: tip
| parent: 0:ab3e3171d569
| summary: 1st change by user B
|
| o changeset: 2:2349e3eed60d
|/ parent: 0:ab3e3171d569
| summary: 1st change by user C
|
| o changeset: 1:10405f5e0994
|/ summary: 1st change by user A
|
@ changeset: 0:ab3e3171d569
summary: Init
Будет ли это работать, если пользователи начнут извлекать данные из других репозиториев, объединять их работу и т. Д .?
Другими словами, это будут репозитории, в которых решение проблем слияния не будет проблемой, и где «push -f» и создание новых заголовков будет приветствоваться, и где родитель рабочего каталога будет всегда остается на "changeset 0". Его единственная цель - служить папкой «резервного копирования наборов изменений» (например, для резервного копирования наборов изменений, которые еще не были интегрированы в наш реальный рабочий процесс).
Будет ли это работать и имеет ли это смысл?
(обратите внимание, что если это не имеет никакого смысла, это не сделает вопрос менее интересным, другие люди могут захотеть сделать именно это, а затем захотят выяснить, почему это не имеет смысла)