Как просмотреть логи переименованного каталога? - PullRequest
0 голосов
/ 22 ноября 2018

Предположим, у меня есть репозиторий с такой структурой каталогов:

my-projects
├── .git
├── project-a
│   ├── sun.hs
│   └── rain.hs
└── project-b
    ├── earth.ml
    └── moon.ml

Чтобы просмотреть все изменения, которые я внес в project-a, я могу сделать git log --oneline project-a:

646fe67 Add rain.hs
752a061 Change color of sun
9edcc0c Add sun.hs

Итакпока это все хорошо.Но предположим, что теперь я переименовываю каталог project-a в project-1:

git mv project-a project-1
git commit -m 'Rename project-a to project-1'

Чтобы просмотреть журналы project-1 (прежний project-a), я делаю git log --oneline project-1:

82442bb (HEAD -> master) Rename project-a to project-1

О нет!Он не показывает изменения, которые я внес в sun.hs и rain.hs!Этот вывод был бы намного полезнее:

82442bb (HEAD -> master) Rename project-a to project-1
646fe67 Add rain.hs
752a061 Change color of sun
9edcc0c Add sun.hs

Но как мне это сделать?т.е. как мне показать полные журналы переименованного каталога?

Я знаю, что git log --follow project-1/sun.hs правильно показывает журнал для файла, но это только для одного файла.При использовании в каталоге опция --follow не действует.

1 Ответ

0 голосов
/ 22 ноября 2018

К сожалению, вы не можете.

Git не хранит имена папок, он хранит путь к файлу, поэтому вы не можете отслеживать переименования папок.

Что вы можете сделать, это написать скрипт, которыйсделает это.

например:

  • зацикливать имена файлов в нужной папке
  • использовать git log --follow -- <file name>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...