Подвижное резервное копирование локального репозитория

Я - большой поклонник резервного копирования вещей. Я сохраняю свои важные школьные эссе и такой в папке моего Dropbox. Я удостоверяюсь, что все мои фотографии дублированы к внешнему диску. У меня есть домашний сервер, где я сохраняю важные файлы зеркально отраженными через два диска в сервере (как программное обеспечение RAID 1).

Таким образом для моего кода, я всегда использовал Подверсию для резервного копирования его. Я сохраняю магистральную папку со стабильной копией моего приложения, но затем я создаю ответвление, названное с моим именем пользователя, и внутри существует моя рабочая копия. Я вношу очень немного изменений между, соглашается на то ответвление, с пониманием, что код там является моим резервным копированием.

Теперь я изучаю Подвижный, и я должен признать, что еще действительно не использовал его, таким образом, у меня может быть это неправильно. Но мне кажется, что у Вас есть репозиторий серверной стороны, и затем Вы клонируете его к рабочему каталогу в форме локального репозитория. Затем, поскольку Вы работаете над чем-то, Вы делаете, соглашается на тот локальный репозиторий, и когда вещи находятся в состоянии, которое будет совместно использовано с другими, Вами hg push в родительский репозиторий на сервере.

Между нажатиями стабильного, протестированного, кода без ошибок, где резервное копирование?

После выполнения некоторых взглядов я пришел к выводу, что это не предназначено в целях резервирования, и это предполагает обработку этого самостоятельно. Я предполагаю, что должен сохранить свои Подвижные локальные репозитории в моем Dropbox или некотором другом поддержанном местоположении, так как мой происходящий код не продвинут к серверу.

Это - в значительной степени это, или я пропустил что-то? Если Вы используете Подвижный, как Вы копируете свои локальные репозитории? Если Вы включили свой компьютер этим утром, и Ваш жесткий диск повысился в провокационных сообщениях (или, более вероятно, считывающая головка разложилась, или ОС повредила себя...), что будет потеряно? Если Вы провели прошлую неделю, разрабатывая модуль, пишущий тестовые сценарии для него, документируя и комментируя его, и затем вирус вытирает Ваш локальный репозиторий, разве который не является единственной копией?

Таким образом на обороте, Вы создаете удаленный репозиторий для каждого локального репозитория и нажатия ко всему этому время?

Как Вы находите баланс? Как Вы удостоверяетесь, что Ваш код сохранен? Где Подвижна строка между использованием как резервное копирование и использование утилиты резервного копирования локальной файловой системы для защиты локальных репозиториев?

10
задан Ricket 24 March 2010 в 07:19
поделиться

3 ответа

Можно думать о Subversion как о «резервной копии», но на самом деле это делается только благодаря тому, что она находится на отдельной машине, что на самом деле не присуще Subversion. Если ваш сервер Subversion был на той же машине, что и ваша машина разработки - не редкость в мире Linux - у вас на самом деле нет резервной копии с точки зрения защиты от сбоев оборудования, кражи, пожара и т. Д. данные в этом случае, которые не копируются вообще - ваш текущий код может существовать в двух местах, но все остальное в репозитории (например, история изменений) существует только в одном месте, на удаленном сервере.

То же самое и с Mercurial, за исключением того, что вы убрали необходимость в отдельном сервере и, таким образом, сделали так, что вам нужно явно думать о резервном копировании, а не о том, что это побочный эффект от необходимости иметь сервер. где-то. Вы определенно можете создать где-нибудь еще один репозиторий Mercurial и периодически вносить в него изменения и считать, что это ваша резервная копия. В качестве альтернативы просто сделайте резервную копию вашего локального репозитория так же, как вы делаете резервную копию любого другого важного каталога. Поскольку у вас есть локальная полная копия репозитория, включая всю историю изменений и другие метаданные, это, возможно, даже более удобно и безопасно, чем то, как вы сейчас делаете это с помощью Subversion.

11
ответ дан 28 October 2019 в 21:30
поделиться

В "скрытом" каталоге .hg хранятся все локальные коммиты. Вы можете создать резервную копию этого каталога с помощью стандартной программы резервного копирования.

9
ответ дан 28 October 2019 в 21:30
поделиться

Изменения попадают в удаленный каталог только при нажатии. Коммиты остаются локальными, но вы их получаете, если клонируете свой репозиторий.Тогда, да, если вы хотите, чтобы ваши вещи попали в репозиторий сервера, вам нужно нажимать на него «все время».

С другой стороны, ничто не мешает вам иметь несколько машин и передавать контент с одной на другую. Каждый ртутный репозиторий может превратиться в сервер за считанные секунды, набрав «hg serve».

Я не уверен, что это действительно ответ на ваш вопрос, но я тоже большой поклонник резервного копирования и управляю таким образом со многими клонами моего репозитория (я также широко использую mq для работы в режиме исправлений, но это уже другая история ).

PS: в качестве примечания, я подумываю использовать mercurial в качестве инструмента для резервного копирования файловой системы. Единственное, что меня беспокоит, это то, что для этой цели я предпочел бы отключить функцию сравнения и рассматривать все файлы как двоичные, но это должно быть легко.

2
ответ дан 28 October 2019 в 21:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: