我建议不要这样做。如果您需要在构建过程中或运行时使用脚本,会发生什么情况,但是由于它具有可执行的位,它会被意外地改变名称?如果其他人在不了解gitignore的情况下为您的项目做出贡献,这可能会造成混淆。您最好手动添加文件(或使用bin目录)来解决此问题。
这就是说,gitignore似乎不支持基于模式的文件忽略,但您可以自动执行手动添加可执行文件的过程。
如果您.gitignore
文件可以重写:
运行此更新您忽略的文件:find -type f -executable | sed 's#^.##' > .gitignore
如果您.gitignore
文件应保持不变:
- 设置一个新的忽略文件(您现有的
.gitignore
仍应可用):git config core.excludesfile .auto_gitignore
- 运行此创建/更新您的忽略文件列表:
find -type f -executable | sed 's#^.##' > .auto_gitignore
- 提交你的,如果你想与他人分享,或添加到
.auto_gitignore
.git/info/exclude
如果你不.auto_gitignore
。请注意,如果你确实分享了它,你的合作者也必须单独做第1步。
注:如果因为你发现的版本不支持-executable
得到一个错误,用-perm /111
更换。
为什么不在'bin /'或类似文件中构建可执行文件,然后使用gitignore'bin/*'? (这是行不通的吗?) – Izkata
把所有东西都放进垃圾箱/工作得很好。我只是不想出于纯粹非理性的原因,我对.gitignore的功能很好奇,所以我希望能够一箭双雕。 – azani