Комментарий из источника Git:
/*
* Read a directory tree. We currently ignore anything but
* directories, regular files and symlinks. That's because git
* doesn't handle them at all yet. Maybe that will change some
* day.
*
* Also, we ignore the name ".git" (even if it is not a directory).
* That likely will not change.
*/
Поэкспериментируйте, что произойдет, если я создам файл .git
и попытаюсь добавить его:
(В Windows я не могу создать файл .git
, когда папка .git
уже существует. Я также мог создать .git
в другом месте в подкаталоге, но хотел попробовать --git-dir
и --work-tree
, которые я раньше не использовал. После всего, что я экспериментирую. Это также позволяет мне показать, что я могу добавить папку метаданных git, как показано ниже)
git --git-dir="c:/test" init
touch blah
git --git-dir="c:/test" --work-tree="." add .
git --git-dir="c:/test" --work-tree="." status ( shows blah added)
touch .git
git --git-dir="c:/test" --work-tree="." add .git ( no output as usual)
git --git-dir="c:/test" --work-tree="." status ( only blah shown)
Так что да, .git
- будь то каталог или файл, игнорируется git.
А если я сделаю что-то вроде ниже:
git --git-dir="c:/test" --work-tree="c:/test" add c:/test
все метафайлы добавляются.
Итак, насколько я вижу, игнорируется только .git
, а не папка метаданных git (которую вы установили с помощью --git-dir
).