如何使用.gitignore

时间:2018-09-22 13:25:12

标签: node.js git github path gitignore

除了一个文件,我想排除node_modules目录。

这是我的.gitignore的相关部分的样子-我尝试了几件事,但没有运气:

.gitignore

....

# node.js
#
node_modules/
npm-debug.log
yarn-error.log

....

我认为我需要做类似的事情:

node_modules/
!node_modules/path/to/index.js

但是它说here由于某些git的限制而无法执行上述操作。无论如何,答案可能就在该链接中,我在弄清楚它时遇到了一些麻烦。

2 个答案:

答案 0 :(得分:2)

您的方式:

node_modules/
!node_modules/path/to/index.js

不!由于Git中存在与性能相关的怪癖,因此您无法否定由于匹配目录的模式而被忽略的文件。

我不确定

git add . 

添加your index.js,所有文件均排除node_modules

但是您可以使用git add node_modules/path/to/index.js -f

  

-f,因为您的文件被其中一个.gitignore文件忽略

并在node_modules/中使用.gitignore

git不会忽略your index.js文件(已将其添加到缓存中)。

答案 1 :(得分:0)

另一种解决方案是将react-native-calendars目录移至node_modules目录之外,例如,将其移至目录名nmod2。然后在导入时,添加var react-cal = require('./nmod2/react-native-calendars');之类的路径而不是var react-cal = require('react-native-calendars');。这样您就可以将整个node_modules目录放在.gitignore中。希望对您有帮助