Переименования Git включены в коммиты? - PullRequest
0 голосов
/ 25 сентября 2018

Я некоторое время играл с Git, но я не нашел хорошего объяснения технических деталей переименований.

Я всегда думал, что переименования каким-то образом отмечены в коммите, так что пробелсохранено, и вы можете отслеживать историю файла до этого переименования.Я был удивлен, узнав, что опция --find-renames включена в git log и git show, но не в git add или аналогичную, поэтому Интересно, действительно ли это только способ представления изменений отфиксирует или есть что-то особенное в переименовании файла в Git .

Я столкнулся с связанной проблемой.Я хотел преобразовать файл YAML в файл JSON, который включает в себя изменение содержимого (более конкретно, изменение каждой строки исходного файла), а также переименование его (изменение расширения).С другой стороны, я думаю, что это действительно переименование;при поиске истории JSON вы также должны найти YAML.

В зависимости от ответа на первый вопрос: Можно ли найти YAML при поиске истории JSONлибо принудительно пометив преобразование как переименованное, либо указав git log, чтобы отобразить его (у меня не получилось git log --follow -M0) ?

1 Ответ

0 голосов
/ 25 сентября 2018

Git отслеживает содержимое, а не файлы , и автоматически определяет сходства на основе содержимого.Если файлы имеют сходное сходство, они отслеживаются как переименованные (если исходный файл был удален) или копируют иначе.Тем не менее, вы не можете заставить Git обращаться с произвольными несхожими / разными файлами как с переименованными.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...