由于某种原因,我的.gitignore文件无法正常工作,而且没有多少谷歌搜索能够修复它
*.apk
*.ap_
*.dex
*.class
**/bin/
**/gen/
.gradle/
build/
local.properties
**/proguard/
*.log
它在主目录中,这是我的git repo。我运行Git 1.8.4.2,因为我使用的是运行OSX 10.8.6的MacBook。
由于某种原因,我的.gitignore文件无法正常工作,而且没有多少谷歌搜索能够修复它
*.apk
*.ap_
*.dex
*.class
**/bin/
**/gen/
.gradle/
build/
local.properties
**/proguard/
*.log
它在主目录中,这是我的git repo。我运行Git 1.8.4.2,因为我使用的是运行OSX 10.8.6的MacBook。
当前回答
添加我的一点,因为这是一个流行的问题。
我无法将.history目录放在.gitignore中,因为无论我尝试了什么组合,它都不起作用。每次保存时,Windows都会生成新文件,我根本不想看到这些文件。
但后来我意识到,这只是我机器上的个人开发环境。像.history或.vscode这样的东西对我来说是特定的,所以如果每个人都根据所使用的IDE或OS包含自己的.gitignore条目,那就很奇怪了。
所以这对我来说很有用,只需在.git/info/exclude中添加“.hhistory”即可
echo ".history" >> .git/info/exclude
其他回答
要取消跟踪已添加/初始化到存储库的单个文件,即停止跟踪该文件,但不从系统中删除它,请使用:git rm--缓存文件名
要取消跟踪.gitignore中的每个文件,请执行以下操作:
首先提交所有未完成的代码更改,然后运行以下命令:
git rm -r --cached .
这将从索引(临时区域)中删除所有更改的文件,然后只需运行:
git add .
提交:
git commit -m ".gitignore is now working"
添加我的一点,因为这是一个流行的问题。
我无法将.history目录放在.gitignore中,因为无论我尝试了什么组合,它都不起作用。每次保存时,Windows都会生成新文件,我根本不想看到这些文件。
但后来我意识到,这只是我机器上的个人开发环境。像.history或.vscode这样的东西对我来说是特定的,所以如果每个人都根据所使用的IDE或OS包含自己的.gitignore条目,那就很奇怪了。
所以这对我来说很有用,只需在.git/info/exclude中添加“.hhistory”即可
echo ".history" >> .git/info/exclude
在cmd窗口中,使用下面的git命令,
git rm—缓存的文件名
解释:
gitrm-从工作树和索引中删除文件
--高速缓存的使用此选项可以取消分级并仅从索引中删除路径。工作树文件,无论是否修改,都将被单独保留。
--来自https://git-scm.com/docs/git-rm
这3个命令将解决问题,您的.gitignore将工作:
git rm -r --cached .
git add .
git commit -m 'Remove ignored files'
现在检查状态:
git status
我知道这已经有很多答案了,但我最后回答这个问题的方式如下。。。
在新的repo中安装npm之前,我已经完成了'node_modules'>.gitignore,直到我更改了.gitignore'(添加了'**/node_modules'、'/node_mdules'等),然后进入git状态,我才意识到它是二进制格式,而不是文本格式,因此git无法识别它。
我通过删除.gitignore文件并将其重新添加到编辑器中来解决问题。