【发布时间】:2014-01-27 08:26:30
【问题描述】:
我是 Node.js 和 NPM 的新手,我正在尝试编写一个网站并将其添加到 Git 上(它是公开的,但只是因为我不想为私人托管付费)。当我将文件推送到 Github 时,Git 会自动忽略几乎所有与 Node 相关的文件,我不知道为什么。具体来说,它似乎忽略了所有node_modules 文件夹、Gruntfile.jses 和package.jsons。这是因为 Git 或 Node,还是我的某个地方的虚动作?
当我执行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 中只有 cmets,也没有.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中的任何内容? -
我没有
.gitignore,但正如我在帖子中所说,Bootstrap 似乎添加了一个。 -
那里列出的未跟踪文件是否都是您打算包含的文件?他们在那里展示的事实意味着 git 并没有通过 .gitignore 忽略它们,它们只是还没有被提交。
git add -A .(不要忘记'.')应该已经成功了。你能不能再试一次,然后把git status的输出贴出来 -
你看我的帖子了吗?我回答了你刚才提出的所有问题。我试过
git add -A以及git add .和git add -u。git status显示的文件与git commit几乎相同,但我将输出添加到我的帖子中以防万一。 -
如果文件被忽略,无论是通过
.gitignore或.git/info/exclude还是通过.git 系统设置本身,它们都不会在您的状态下显示-all-,即使@ 987654356@。因此,它们当然不会被忽略,并且使用git add -A或git add <file>添加它们就可以正常工作,除非您安装的 git 已损坏。
标签: node.js git twitter-bootstrap npm windows-8.1