5

У меня есть более 200 проектов на моей рабочей станции, каждый из которых является git-репозиторием. Большинство из них заменены или иным образом заброшены. Я до сих пор храню код на случай, если мне что-нибудь понадобится от них.

В настоящее время активные проекты являются не-пустыми Git-репозиториями в ~/Projects , неактивные проекты являются архивами .tar.gz которые просто содержат весь не-голый Git-репозиторий в одной и той же папке. Итак, я получил следующее:

  • ~/Projects/some-active/.git
  • ~/Projects/some-inactive.tar.gz

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

Есть ли лучший способ для этого?

1 ответ1

5

Первое предложение: просто сохраняйте их так же, как активные репозитории, за исключением того, что убедитесь, что все объекты находятся в одном пакете (git gc сделает это). rsync в основном просто проверяет время модификации; он не читает весь файл, если все остальное совпадает; это не должно быть медленным. (Моя резервная копия состоит из rsyncing более 1M файлов, многие из которых являются репозиториями Git, и это все еще приемлемо быстро ...)

Второе предложение: держите их как открытые хранилища. Всякий раз, когда вы хотите просмотреть файлы, используйте режим "дерева браузера" tig или клонируйте в /tmp (например, git clone -s ~/Projects/foo.git /tmp/foo). Таким образом, в каждом репо будет всего около 5 файлов (packfile, pack index, config, pack-refs).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .