Репозиторий Github клонирован на синхронизированный диск iCloud на нескольких компьютерах - PullRequest
0 голосов
/ 05 марта 2019

У меня есть пара компьютеров Mac, на которых я клонирую достаточное количество репозиториев git (в основном GitHub).Каждый из компьютеров Mac имеет несколько каталогов, синхронизированных с диском iCloud (на самом деле я пошел ва-банк и синхронизирую Desktop и Documents).

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

Я пытался использовать различные инструменты Apple iCloud для ведения журналов под brctl, но этокак правило, не помогло.

Кто-нибудь еще видел это или что-то подобное?

(Это несколько отличается от этого вопроса , который в основном, похоже, заботится об одном Mac сiCloud, и я не думаю, что пользователи в такой ситуации увидят те же проблемы, что и я.)

Ответы [ 2 ]

0 голосов
/ 04 апреля 2019

Я обнаружил, что icloud и git НЕ совместимы.icloud повсюду прикрепляет файлы к точкам, и если вы создаете узел с гигантскими каталогами node_modules, это делает его безумным.Он восстановит старые файлы, и ваши репозитории git функции в основном конкурируют с любой произвольной резервной копией и синхронизацией, которую делает icloud.

Мой урок - НЕ размещать репозитории в любом месте, где их поддерживает icloud.Кроме того, это избыточно, если у вас есть учетная запись git или bitbucket (или удаленный git) в другом месте, с тех пор, по определению, хранилище может быть восстановлено версионным способом.

0 голосов
/ 12 марта 2019

использовать iCloud (или Drive) для этой задачи, кажется, совершенно неправильный подход, потому что несколько локальных рабочих копий (которые в случае git также являются репозиториями) и удаленные репозитории могут быть не совсем синхронизированы,Лучше исключить эти репозитории из синхронизации и настроить задание cron, которое тянет их с git, как и должно быть.аналогично этому, шансы невелики, что может испортить локальные каталоги .git (которые не идентичны на каждой машине) - несмотря на то, что незафиксированные файлы не будут мгновенно синхронизированы.это может, по крайней мере, объяснить, почему синхронизация 1-го компьютера все еще работает.Я бы только синхронизировал shell-скрипт, который запускается как cron-job, который извлекает эти репозитории, так что можно удобно добавлять / удалять репозитории оттуда.

...