除特定文件外,忽略git中的所有文件

3

我在 Stack Overflow 上阅读了关于使用 gitignore 忽略除特定文件以外的所有内容的文章。 我已经尝试了许多不同的建议,但无法使其对我起作用。

这是我的目标:我想要排除主目录中除一个文件和子目录中的几个其他文件以外的所有内容。因此,我只需要这些文件:

flightsofideas.rb
/FlightsOfIdeas/svgExportTools.rb
/FlightsOfIdeas/svgExport.rb

我最新的gitignore版本是:

*    
!flightsofideas.rb
!/FlightsOfIdeas/svgExportTools.rb
!/FlightsOfIdeas/svgExport.rb

但是git只包含flightsofideas.rb,它不会获取子目录中的文件。

git check-ignore -v -- FlightsOfIdeas/svgExport.rb 返回什么?(你使用的 git 版本是什么?) - VonC
也许这是因为 https://dev59.com/d3zaa4cB1Zd3GeqPNkKU#21643672 的原因? - VonC
它返回了这个: .gitignore:5:* FlightsOfIdeas/svgExport.rb。我的 Git 版本是:git version 1.8.5.2 (Apple Git-48) - Scott Goldthwaite
你不能使用通配符或其他什么吗?那将是 Git 的一个非常好的功能。 - William
1个回答

2
你应该添加 !*/ 来避免忽略目录,否则它将不会查找目录以包含后面的文件。
仍然是与Git 忽略目录和目录/*之间有何区别?类似的问题。
*
!*/
!/flightsofideas.rb
!/FlightsOfIdeas/svgExportTools.rb
!/FlightsOfIdeas/svgExport.rb

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接