Я использую мерзавца в качестве резервного инструмента и 'профиля роуминга' для моего каталога $HOME между ноутбуком и рабочим столом.
Моя проблема состоит в том, что под моим $HOME у меня есть каталог Development с несколькими проектами мерзавца, я продолжаю работать. Мерзавец не позволит мне добавлять подкаталоги .git папки. Таким образом для согласия на эти проекты я должен продвинуть изменения в своего мерзавца $HOME repo, надеть ноутбук (где они были созданы, и .git dir экс-находится), и фиксация.
Я читал о подмодулях, но это не действительно, что я хочу. Я просто хочу, чтобы дети .git папки рассматривались как любой старый каталог, таким образом, я могу переместить их и создать резервную копию их.
Кто-либо сделал это или имеет идею, как я был бы?
Я бы порекомендовал сценарий, который сначала будет выполнять резервное копирование всех проектов .git
у вас в $ HOME: он создаст один файл резервной копии (все еще в вашем $ HOME)
Подробнее см. git bundle
.
Затем вы можете добавить / обновить эти файлы резервных копий (или «связать») в свой основной репозиторий git (который содержит все ваши $ HOME
, кроме проектов .git).
Наконец, вы можете экспортировать весь свой $ HOME как один файл с помощью той же техники резервного копирования Git ( git bundle
).
В прошлом я использовал gibak , инструмент резервного копирования Git. Помимо заботы об атрибутах файлов, он также заботится о репозиториях Git внутри вашего домашнего каталога.
Одно заявление об отказе от ответственности. Я использовал его некоторое время, но иногда резервная копия становилась поврежденной. Я не исследовал это, но подозреваю, что это связано с тем фактом, что запущенные приложения постоянно записывают данные в ваш домашний каталог. В какой-то момент хеш-коды не совпадают, и вам нужно предпринять некоторые умные действия, чтобы исправить это (или начать новое резервное копирование).
По крайней мере, попробуйте, это может сработать для вас. Проблема, о которой я упоминал, также может быть вызвана Git. Поскольку я пробовал это 1,5 года назад, тем временем это может быть исправлено.
Не делай этого. Это плохая идея, потому что вы создаете резервную копию версионного репозитория. Просто создайте резервную копию с помощью rsync (вы все равно можете создать версию родительского элемента с помощью git)
Я лично использую git для синхронизации некоторых точечных файлов, таких как .profile или .vimrc. Чтобы избежать проблем, подобных вашей, мой git расположен в $ HOME / dot, а отдельные файлы имеют символические ссылки в $ HOME.