Git 如何不将特定文件夹推送到远程repo?
我有一个使用Ruby on Rails的项目,本地文件(本例中的图像)存储在路径Git 如何不将特定文件夹推送到远程repo?,git,Git,我有一个使用Ruby on Rails的项目,本地文件(本例中的图像)存储在路径/public/system中。我在.gitignore中包含了这一行,但每次我将更改推送到远程存储库时,图像都会上传到github 为什么? 我只是希望这个文件夹及其内容不要上传到github,但我确实希望将文件保存在我的本地repo中 这是我的.gitignore文件,它只是默认内容,我添加了最后一行: # See https://help.github.com/articles/ignoring-files f
/public/system
中。我在.gitignore
中包含了这一行,但每次我将更改推送到远程存储库时,图像都会上传到github
为什么?
我只是希望这个文件夹及其内容不要上传到github,但我确实希望将文件保存在我的本地repo中
这是我的.gitignore
文件,它只是默认内容,我添加了最后一行:
# See https://help.github.com/articles/ignoring-files for more about ignoring files.
#
# If you find yourself ignoring temporary files generated by your text editor
# or operating system, you probably want to add a global ignore instead:
# git config --global core.excludesfile '~/.gitignore_global'
# Ignore bundler config.
/.bundle
# Ignore the default SQLite database.
/db/*.sqlite3
/db/*.sqlite3-journal
# Ignore all logfiles and tempfiles.
/log/*
!/log/.keep
/tmp
/public/system
一旦提交了其中一个文件(记住git不关心文件夹),将它们添加到
。gitignore
文件不具有追溯效力。您必须使用此命令删除它们
git-rm——缓存的公共/系统
它只会将它们从git索引中删除,而不会在您的本地修改中删除,因此文件夹仍将存在于您的文件系统中。一旦提交了其中一个文件(记住git不关心文件夹),将它们添加到
。gitignore
文件不会追溯。您必须使用此命令删除它们
git-rm——缓存的公共/系统
它只会将它们从git索引中删除,而不会在您的本地修改中删除,因此该文件夹仍将存在于您的文件系统中。我看到了答案的可能副本,但我并没有问这个问题,我正在更新我的帖子,以澄清您的问题。上面的答案有什么不适用?这与你刚才选择的答案完全相同。可能是我看到的答案的重复,但我不是在问这个问题,我正在更新我的帖子,以澄清你问的正是这个问题。上面的答案有什么不适用?这和你刚才选择的答案是一样的命令,很有效!但是,如果我再次运行
git add-A.
该怎么办?这会不会再次开始跟踪文件夹?我想是吧?我能做些什么来避免这种情况?一旦您提交了@aduch和您的.gitignore
文件概述的“删除”,它们应该被永久忽略。您可以使用git status来测试这一点-它们不应该显示为未跟踪的文件。这很有效!但是,如果我再次运行git add-A.
该怎么办?这会不会再次开始跟踪文件夹?我想是吧?我能做些什么来避免这种情况?一旦您提交了@aduch和您的.gitignore
文件概述的“删除”,它们应该被永久忽略。您可以使用git status来测试这一点-它们不应该显示为未跟踪的文件。