Я помещаю рабочие файлы в репозитории Git и синхронизирую между компьютерами / ноутбуками с помощью внешнего SSD. Так, например, если я хочу синхронизировать repo1
с моего ПК на мой ноутбук, вот шаги, которые нужно сделать:
cd /media/externalssd/repo1 && git pull ~/repo1
cd ~/repo1 && git pull /media/externalssd/repo1
Дополнительная информация: я использую ZFS в Linux, используя zfs-fuse
.
Иногда, посреди тяги, соединение USB-кабеля не очень хорошее, поэтому файловая система «отключается» или иногда zfs-fuse
демон умирает. После перезапуска zfs-fuse
и перемонтировать файловые системы, иногда я получаю усечение нескольких файлов на ноутбуке, и репозиторий на ноутбуке больше не распознается как репозиторий git («фатальный: не репозиторий git (или любой родительский объект до точки монтирования / мля) "). Иногда повреждается и репозиторий на SSD.
Это меня пугает.
Какие элементы, вероятно, обрезают файлы? SSD? Linux? zfs-fuse
? Git? Как мне избежать этого повреждения и получить надежный процесс синхронизации?
Мне кажется, что у вас проблемы с надежностью подключения SSD, что по сути вызовет проблемы с любым программным обеспечением, которое пытается читать или писать с этого диска. В вашем случае это ПО git
.
Если вы не можете доверять своим соединениям при переходе с устройства на устройство, вам, вероятно, следует пересмотреть свой рабочий процесс.
Из приведенной выше информации я полагаю, что ваш компьютер и ноутбуки находятся в одном месте или, по крайней мере, могут быть подключены к одной и той же локальной сети. Почему вы не можете подключить SSD к ПК на постоянной основе, а затем использовать git для отправки / получения файлов по сети? Это решение должно быть относительно быстрым, как замена USB-накопителя, для всех намерений и целей управления версиями файлов.