Ruby on rails 将文件夹添加到.gitignore

Ruby on rails 将文件夹添加到.gitignore,ruby-on-rails,git,gitignore,Ruby On Rails,Git,Gitignore,请帮我拿个git 我在public/images目录下有文件,不想跟踪它们。但是我需要跟踪/public/images/bonus2目录中的文件。我使用了这个代码,它是有效的 /public/images/ !/public/images/bonus2/ 但是,当我尝试将跟踪文件从public/images/bonus2移动到public/images/bonus_并生成.git时,我会这样忽略: /public/images/ !/public/images/bonus2/ !/public

请帮我拿个git

我在public/images目录下有文件,不想跟踪它们。但是我需要跟踪/public/images/bonus2目录中的文件。我使用了这个代码,它是有效的

/public/images/
!/public/images/bonus2/
但是,当我尝试将跟踪文件从public/images/bonus2移动到public/images/bonus_并生成.git时,我会这样忽略:

/public/images/
!/public/images/bonus2/
!/public/images/bonus_ordering/
并发出以下命令:

mv public/images/bonus2 public/images/bonus_ordering
git跟踪public/images/bonus2中的文件被删除,但不跟踪public/uploads/bonus中出现的新文件


我使用git add-f public/images/bonus_排序,但我认为这不是一个好的解决方案。我需要做什么来代替它呢?

您应该添加已更改的.gitignore文件,并首先提交它以使其生效

git add .gitignore
git commit -m "update gitignore"
mv your_file your_new_location
git add .
git commit -m "files moved"

编辑:正如JonC指出的,您不需要提交.gitignore文件。添加它就足以使其生效

如果您使用的是
git mv
而不是
mv
,效果会更好吗?也可能是有趣的检查。这可能有帮助:-值得阅读两个最重要的答案。改变它首先:是的。和和提交,不需要。要立即考虑
.gitignore
,不需要添加和提交。但是,为了不丢失对
.gitignore
文件的修改,这仍然是一个好主意。@VonC我实际上对此有疑问。但我的回答是为了更安全。
git add .gitignore
git commit -m "update gitignore"
mv your_file your_new_location
git add .
git commit -m "files moved"