Насколько безопасно создать ветвь клона локального репозитория Mercurial, просто скопировав весь каталог?

Если у меня локально довольно большой проект Mercurial и я хочу поэкспериментировать, могу ли я просто сделать локальную копию всего и работать там?

Например, скажем, я делаю это:

  1. Клонировать репозиторий с центрального сервера в локальный каталог
  2. Внесите некоторые изменения, зафиксируйте их локально, не нажимайте
  3. Сделайте копию каталога локально
  4. Внесите некоторые изменения в обе копии локально, зафиксируйте, не нажимайте
  5. Подтолкнуть оригинальную копию
  6. Нажать вторую копию

Будет ли это безопасно? Или при клонировании создается какой-то уникальный идентификатор?

Один проект довольно большой, и сервер имеет довольно медленное соединение, по крайней мере, так кажется, поэтому требуется много времени, чтобы сделать полное клонирование с центрального сервера.


person Lasse V. Karlsen    schedule 02.06.2010    source источник


Ответы (1)


Ага, это совершенно безопасно.

Единственные различия, о которых я могу думать между локальным клонированием репозитория hg clone a/ b/ и копированием репозитория cp -r a/ b/, заключаются в следующем:

  • При клонировании будут использоваться жесткие ссылки, если это возможно, поэтому будет использоваться меньше места на диске.
  • Конфигурация репозитория (например, a/.hg/hgrc) не будет скопирована hg clone
  • Если вы клонируете, путь push / pull по умолчанию b/ будет установлен на a/

Итак, да - нет проблем с простым копированием репо.

person David Wolever    schedule 02.06.2010
comment
Спасибо, я надеялся, но не совсем уверен. - person Lasse V. Karlsen; 02.06.2010
comment
Этот элемент «жесткие ссылки» может иметь большое значение с точки зрения пространства. Если вы клонируете базовые файлы .hg, это жесткие ссылки, поэтому они не занимают дополнительного места до тех пор, пока не будут внесены изменения. Перед лицом 'clone -U', который не создает рабочую копию, вообще не занимает нового места (плюс-минус). Так что вы можете сделать clone -U, а затем скопировать измененный и незафиксированный рабочий каталог. Тогда вы получите свой рабочий процесс плюс экономию места. - person Ry4an Brase; 02.06.2010
comment
Это в Windows, поэтому я сомневаюсь, что жесткие ссылки будут для меня проблемой :) Извините, что не упомянул об этом в моем вопросе. - person Lasse V. Karlsen; 02.06.2010
comment
жесткие ссылки также используются в Windows (если они доступны, то есть в NTFS) - person Idan K; 03.06.2010