Я пытаюсь разместить в истории git последовательные снимки конкретного проекта. Я делаю это путем заполнения каталога хранилища с содержимым каждого снимка и затем запуститьКак я могу контролировать порог переименования при записи файлов в git?
git add -A .
git commit -m 'Version X'
Этот метод рекомендуется в this answer. Тем не менее, я вижу, что фиксация распознает переименование файлов только тогда, когда 100% содержимого файла остается неизменным. Есть ли способ повлиять на определение переименования git commit
, чтобы найти переименования, где содержимое файла немного изменилось? Я вижу, что git merge
и git diff
имеют различные опции для управления порогом переименования, но эти параметры не существуют для git commit
.
вещи я попытался:
- Расположение переименованные файлы с самогонного сценария, и выполнение коммита с исходными файлами переименованы в новых местах до совершения нового содержимого файла. Однако это вводит искусственный коммит и кажется неэлегантным, потому что он не использует функции обнаружения переименования git.
Создание отдельной ветви для каждого снимка, а затем объединять последовательные ветви на
master
используяgit merge -s recursive -Xtheirs -Xpatience -Xrename-threshold=20
Однако, это оставило меня с переименованных файлов старой версии на месте, в то же время не в состоянии обнаружить переименования.
Имеет ли это значение? Установка такой опции в 'git commit' повлияла бы только на интерфейс UI команд; Git фактически не отслеживает переименования. –
Я бы хотел, чтобы git log --follow' работал во всех переименованиях. С простой последовательностью фиксаций она останавливается в самой последней версии файла. –