如何忽略git中的目录

如何忽略git中的目录,git,github,gitignore,google-maps-sdk-ios,Git,Github,Gitignore,Google Maps Sdk Ios,所以谷歌地图框架的最新版本是123MB,这导致GitHub的100MB限制出现各种各样的问题。我试过了,但没用。所以现在我试图忽略我的Pods目录。我将.gitignore文件编辑为如下所示: # Xcode .DS_Store build/ *.pbxuser !default.pbxuser *.mode1v3 !default.mode1v3 *.mode2v3 !default.mode2v3 *.perspectivev3 !default.perspectivev3 *.xcwork

所以谷歌地图框架的最新版本是123MB,这导致GitHub的100MB限制出现各种各样的问题。我试过了,但没用。所以现在我试图忽略我的Pods目录。我将.gitignore文件编辑为如下所示:

# Xcode
.DS_Store
build/
*.pbxuser
!default.pbxuser
*.mode1v3
!default.mode1v3
*.mode2v3
!default.mode2v3
*.perspectivev3
!default.perspectivev3
*.xcworkspace
!default.xcworkspace
xcuserdata
profile
*.moved-aside
DerivedData
.idea/

# CocoaPods
#
# We recommend against adding the Pods directory to your .gitignore. However
# you should judge for yourself, the pros and cons are mentioned at:
# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control
#
Pods/
但当我尝试推送时,我仍然从谷歌地图播客中得到了同样的文件,错误太大了。我错过了什么

编辑:对于那些不相信这一点的人,这里有一个确切的错误:

File Pods/GoogleMaps/Frameworks/GoogleMaps.framework/Versions/A/GoogleMaps is 123.00 MB; this exceeds GitHub's file size limit of 100.00 MB

这是一个GitHub问题

您需要确保该文件根本不在您的回购协议中。这意味着从所有提交中删除该文件。将文件添加到
.gitignore
不会从Git中删除已添加的文件,从最新提交中删除文件不会从repo中删除该文件,因为该文件仍存在于repo历史记录中(换句话说,
Git rm
没有帮助)


要完全删除该文件,请编辑历史记录。请参阅:

我觉得
.gitignore
不错。我可以想到以下原因,为什么您仍然达到100MB的限制:

  • 您已经添加了Pods目录,但尚未提交。在本例中,
    git rm--cached
    是您的朋友
  • 您在先前的提交中提交了Pods目录。由于git上载远程版本和本地版本之间的所有中间更改,因此Pods目录将被上载,即使它在最近的提交中再次被删除。在这种情况下,从历史记录中删除Pods目录的唯一方法是
    git-rebase
试试这个

git更新索引——假设“/pods”未更改
,然后执行git状态,以确保我们要提交什么。现在,这一次它不应该包括“pods”目录


希望这有所帮助?

在git跟踪这些文件后,您是否试图忽略它们?如果是这样,您可能必须
git rm--cached
才能取消跟踪。“git的100MB限制”?是的,@jthill。请参见编辑。这是一个非常有名的限制。这是一个github限制,而不是git限制,好的,很好,让我们关注一下。别想在实际问题上帮忙了。谢谢你的建议。我试过这个:
git-rm-GoogleMaps-r
来自Pods目录。终端显示所有文件都被删除了。然后,我将所有文件删除并提交。但是,当我尝试推送时,仍然出现相同的错误:/