Я единственный разработчик и у меня 3 компьютера. К тому же у моего друга есть учетная запись, но он никогда ею не пользуется. Моя текущая настройка - это GIT + мое собственное специальное задание резервного копирования, которое клонирует репозиторий, архивирует его, gnupg и отправляет на удаленный ftp. Пока это действительно хорошо работает только для моего исходного кода / файлов docbook / xml + небольших двоичных файлов (в основном значков + некоторых изображений для использования с docbook).
Однако недавно я подключился к проекту флеш-игры и сделал для нее репозиторий, но FLA-файлы флеш-памяти огромны (я видел +70 МБ). И git repack с маленьким размером окна больше не может завершиться. Более того, я обнаружил, что в некоторых моих файлах используется возврат каретки вместо перевода строки, и GIT недоволен этими файлами. Когда я создавал репозиторий, я должен был настроить его на автоматическое преобразование CR в LF при фиксации. Однако я не знал об этих проблемах.
От отчаяния я попробовал Mercurial, но его максимальный размер составляет 10 МБ.
Я думаю, может быть, разбить мои проекты на двоичные файлы и держать их в состоянии подрывной деятельности, поскольку с двоичными файлами это нормально. И исходный код в GIT. Но это будет огромная задача, и почему-то это звучит как плохой план.
Какую систему контроля версий вы используете? Как вы его поддерживаете? и что вы делаете со своими двоичными файлами?
Это деф. плохой план, разделение ваших систем контроля версий!
Мы передаем двоичные файлы через SVN каждый день, где бы мы ни находились, некоторые из них тоже большие. Обратите внимание, что, конечно, вы не можете различать двоичный файл, и если ваш двоичный файл составляет 20 МБ, каждый раз, когда вы его фиксируете, вам понадобится еще 20 МБ места на вашем сервере Subversion.
Что касается наших резервных копий, мы просто запускаем SVNDump каждую ночь, сжимаем и выгружаем так же, как вы.
С учетом всего сказанного, этот вопрос, возможно, лучше задать для Переполнение стека ребята, так как они более тяжелые пользователи венчурного капитала, чем мы в SF!
(Не беспокойтесь о повторном создании этого вопроса, если достаточное количество людей согласится, он будет перемещен автоматически).
Вы хотите, чтобы ваши 70M файлов были зарезервированы, верно? Если да, то какую бы схему вы ни использовали, вы скопируете их на FTP-сайт хотя бы один раз. Если они вообще сжимаемы, вполне вероятно, что git выполнит практически лучшую работу по их сжатию, которая практически возможна.
Чтобы не копировать весь репозиторий на ваш FTP-сайт для каждой резервной копии, я бы посмотрел на
(Я сохраню ваши файлы CRLF для другого ответа)
Что касается CRLF - посмотрите на git-config (1), особенно на параметр «core.autocrlf», который можно использовать для переключения поведения преобразования.