Я новичок в Node.js & NPM, и я экспериментирую, написав сайт &, добавив его на Git (он публичный, но только потому, что я не хочу платить за частный хостинг). Когда я нажимаю файлы в Github, Git автоматически игнорирует почти все файлы, связанные с узлом, и я не могу понять, почему. В частности, он, кажется, игнорирует все папки node_modules
, Gruntfile.js
es и package.json
s. Это из-за Git или Node, или это фиктивный ход где-то с моей стороны?Почему Git автоматически игнорирует большинство файлов узлов?
Когда я git add -A
, git add .
или git add -u
, все из которых, как предполагается, включают в себя все добавленные & удаленные файлы (я думаю), а затем использовать git commit
или git commit -a
я получаю что-то вроде этого:
$ git commit -m "hopefully added all files"
On branch dev
Your branch is up-to-date with 'origin/dev'.
Untracked files:
.jshintrc
app/
libs/Gruntfile.js
libs/node_modules/.bin/_mocha
libs/node_modules/.bin/_mocha.cmd
libs/node_modules/.bin/mocha
etc.
nothing added to commit but untracked files present
I попытался найти .gitignore
в любом месте корневой папки, но все, что я мог найти, это файл gitignore
в моей папке Bootstrap (говоря о том, почему это так?), но если я прав, это не должно влиять на папки над ним? У него были правила для node_modules, но не Gruntfile.js или package.json, и когда я прокомментировал все правила, файлы все равно игнорировались.
Это подмодуль, поэтому он использует папку .git
родительского проекта. Этот родительский проект имеет только комментарии в своем .git/info/exclude
, а также не имеет .gitignore
. Никакие другие подмодули не имеют .gitignore
.
Так почему же это происходит?
EDIT: git cherry
& git diff
оба ничего не показывают. git status
показывает:
$ git status
On branch dev
Your branch is up-to-date with 'origin/dev'.
Untracked files:
(use "git add <file>..." to include in what wi
libs/Gruntfile.js
libs/node_modules/.bin/_mocha
libs/node_modules/.bin/_mocha.cmd
libs/node_modules/.bin/mocha
libs/node_modules/.bin/mocha.cmd
libs/node_modules/grunt-contrib-compass/
etc.
nothing added to commit but untracked files present (use "git add" to track)
EDIT 2: Этот веб-сайт является подмодуль, но я никогда не использовал .gitignore
или .git/info/exclude
на суперпроекте или любых других подмодулей. Тем не менее, может ли это иметь какое-либо отношение к проблеме?
EDIT 3: Как я уже сказал, git add -A
, git add .
& git add -u
никогда ничего из узлов файлов или папок добавить, но добавление отдельных файлов & папок делает. Это делает его еще более странным.
Что-нибудь в '.gitignore'? – zerkms
У меня нет '.gitignore', но, как я уже сказал в своем посте, Bootstrap, похоже, добавил его. – trysis
Не указаны ли в файлах без следа все те, которые вы планировали включить? Тот факт, что они показывают там, означает, что git не игнорирует их через .gitignore, они просто не были поставлены для фиксации. 'git add -A .' (не забывайте«. ») должен был сделать трюк. Можете ли вы попробовать еще раз, а затем опубликовать вывод 'git status' –