Git с Dropbox
Я использую git полгода или около того, и я не знаю, использую ли я git полностью.
Прежде всего, я экспериментировал с Dropbox, и я чувствую, что если я смогу включить его в свой рабочий поток, было бы действительно здорово, так как Dropbox довольно удобен.
- У меня есть рабочий стол и ноутбук. И то и другое
есть dropbox.
- Я инициализировал свои репозитории Dropbox
делая
git init --bare
. А потом
на моем рабочем столе post-commit script,
У меня есть git push --mirror
dropbox
.
Таким образом, мой рабочий стол и Dropbox всегда будут полностью зеркалированы, что хорошо.
Мой настоящий вопрос: как мне настроить свой ноутбук?
Я слышал несколько предложений:
- Извлеките мой рабочий стол, чтобы мой
Ноутбук происхождения рабочего стола.
- Потяните прямо из dropbox, чтобы мой
Новейшее происхождение - это dropbox.
Я делаю номер 2, и я не знаю, поступаю ли я правильно.
Мой рабочий поток включает в себя:
- Каждый раз, когда я нахожусь на своем ноутбуке, я делаю растягивание git (поскольку исходное изображение для ноутбука - это обновление для Dropbox и Dropbox)
- Затем, когда я проверяю ветку из dropbox на локальную ветку.
- После того, как я закончил работу, я совершаю.
- Вот где я запутался: нужно ли мне нажимать --mirror на мои репозитории Dropbox (мои репозитории происхождения для ноутбуков)? У меня возникают некоторые трудности в этой области: иногда Dropbox не синхронизируется достаточно хорошо и т.д.
В настоящее время выполнение git branch -r
на моем рабочем столе после выполнения git push --mirror origin
на моем ноутбуке не показывает мой последний ноутбук. Может кто-нибудь сказать мне, почему?
Я упомянул, что вытащил свой рабочий стол прямо, потому что таким образом я всегда могу инициализировать pull, и я на 100% уверен, что синхронизация выполнена. С dropbox я никогда не могу быть на 100% уверен, было ли обновление перенесено на сервер Dropbox
Ответы
Ответ 1
Если вы хотите добавить промежуточный контейнер репо, Dropbox в порядке:
-
Вы используете формат git bundle
: он генерирует голое репо только с одним файлом (что означает Dropbox более вероятно для правильной синхронизации с любым из ваших компьютеров: это просто копирование одного файла, а не "всей структуры", из которой вы не уверены, что получите все обратно).
-
Вы используете инкрементный пакет для каждого из ваших сейвов (опять же, один файл за одно сэкономленное, легко извлекается с другой стороны, чтобы вернуть то, что было сделано).
Назовите свой прирост после источника (ноутбук или рабочий стол) и с датой.
В принципе, вы будете тянуть с любого xxx.bundle, которого вы еще не потянули.
-
Вы регулярно очищаете все промежуточные инкрементные связки, заменяя их полным пакетом из любого источника, который является самым последним
Эта модель позволяет:
- простой процесс синхронизации (один или несколько файлов)
- быстрый процесс (с добавочными пакетами)
- масштабирование: если есть несколько актеров, то есть, если несколько человек обновляют одну ветвь, вы можете изолировать их вклады, вытягивая их, ссылаясь на свои пакеты, используя другое удаленное имя (поскольку каждый пучок - это голый репо, из которого вы можете тянуть).