我是Node.js & NPM的新手,我正在嘗試編寫一個網站&在Git上添加它(它是公開的,但僅僅是因爲我不想支付私人託管費用)。當我將文件推送到Github時,Git會自動忽略與Node有關的每個文件,並且我無法弄清楚原因。具體來說,它似乎忽略了所有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
我嘗試在根文件夾中的任何位置搜索.gitignore
,但我能找到的所有文件都是我的Bootstrap文件夾中的一個gitignore
文件(說到這裏爲什麼?),但是如果我正確,那應該不會影響上面的文件夾?它具有node_modules的規則,但不包含Gruntfile.js或package.json,並且當我評論所有規則時,文件仍然被忽略。
這是一個子模塊,因此它使用父項目的.git
文件夾。該父項目在其.git/info/exclude
中只有評論,也沒有.gitignore
。沒有其他子模塊也有.gitignore
。
那麼爲什麼會發生這種情況呢?
編輯: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)
編輯2:這個網站是一個子模塊,但我從來沒有在上層項目或任何其他子模塊使用.gitignore
或.git/info/exclude
。不過,這可能與這個問題有什麼關係?
編輯3:正如我所說的,git add -A
,git add .
& git add -u
絕不添加從節點的文件或文件夾的東西,但添加單獨的文件夾&做。這使得它更加怪異。
'.gitignore'中的任何內容? – zerkms
我沒有'.gitignore',但正如我在我的帖子中所說,Bootstrap似乎已經添加了一個。 – trysis
未列出的未跟蹤文件是否包含您打算包含的所有文件?他們在那裏顯示的事實意味着git不會通過.gitignore忽略它們,它們只是沒有被提交進行提交。 'git add -A .'(不要忘了'。')應該已經做到了。你能再試一次,然後發佈'git status'的輸出嗎 –