Я использовал git некоторое время на проекте и его время для очистки.Смягчение последствий рефакторинга кода в git repo
У меня есть несколько файлов исходного кода, которые стали большими и должны быть разделены на несколько файлов. Я также хочу переместить некоторые функции из одного файла в более подходящий.
Поскольку git отслеживает все мои изменения, это эффективно удваивает размер моего git-репо? Есть ли способ избежать этого? Или лучше сохранить историю этих изменений? (в случае, если по какой-то причине я хочу вернуться в грязное состояние, в котором я сейчас)
Мысли, мнения и решения приветствуются! Спасибо.
Пункт 1 на самом деле не так - git хранит файлы, а не дельта. (Это сильно отличается от многих старых SCM, которые сохраняют дельтах, таких как оригинальные SCCS, или обратные дельта, такие как RCS или «чередующиеся» дельта, как позже SCCS.) Однако он также сохраняет свое содержимое в сжатой двоичной форме, поэтому если большой кусок кода тот же, что и в файлах fileA и fileB, хотя файлы fileA и fileB различны (и даже в разных ветвях и т. д.), сжатие очень помогает. – torek
Я этого не знал. Вы правы, это отход от почти любого другого SCM. Я считаю, что моя точка зрения все же заключается в том, что увеличение размера репозитория от перемещения фрагмента кода из одного текстового файла в другое незначительно, так как оно в конечном итоге будет сжато почти до нуля. – bloy