Как вывести список всех файлов, добавленных в первый коммит репозитория GIT?
Текущий статус: я использую git diff-tree -r HASH
перечислить все добавленные, измененные и удаленные файлы в конкретном коммите. Это работало до сегодняшнего дня.
Проблема: я хочу перечислить все добавленные файлы в моем первом коммите, однако передача первого HASH в качестве параметра не работает. Зачем?
Главный вопрос: Как я могу получить список всех файлов, добавленных в мой первый коммит?
3 ответа
Это работает для меня
git show <commit|branch-name> --name-only
Для первого коммита, если вы настаиваете на git diff-tree -r HASH
нужен еще один параметр, 4b825dc642cb6eb9a060e54bf8d69288fbee4904
,
4b825dc642cb6eb9a060e54bf8d69288fbee4904
это пустое дерево. Для того, чтобы сделать этот специальный объект дерева:
#inside your repo
git rm -r *
git write-tree
git reset HEAD --hard
Или более надежным способом:
#inside your repo
git init temp
cd temp
git commit --allow-empty -m 'empty tree'
cd ..
git fetch temp/ master
rm -rf temp
Сейчас git diff-tree -r HASH 4b825dc642cb6eb9a060e54bf8d69288fbee4904
работает.
Вы можете пометить этот объект дерева для легкого использования в будущем и отправить его в другие репозитории.
git tag void 4b825dc642cb6eb9a060e54bf8d69288fbee4904
git diff-tree -r HASH void
git push <remote> void