Git 如何从所有子目录中忽略以XX-version.properties结尾的文件?

Git 如何从所有子目录中忽略以XX-version.properties结尾的文件?,git,gradle,Git,Gradle,最近,我发现gradle正在为每个项目生成版本文件,并且name已经对其进行了修改 区域部署文件可能需要,但本地不允许sens签入git存储库 文件名模式是这样的 后端/web-version.properties backend/api/api-version.properties 我想忽略签入者姓名以xxx-version.properties结尾的所有文件,以及存储库中已存在的所有子文件夹和文件中的所有文件。我试过了,但没有成功 我这里有两个问题 对于具有特定文件名格式的文件,git忽略模

最近,我发现gradle正在为每个项目生成版本文件,并且name已经对其进行了修改

区域部署文件可能需要,但本地不允许sens签入git存储库

文件名模式是这样的

  • 后端/web-version.properties
  • backend/api/api-version.properties
  • 我想忽略签入者姓名以xxx-version.properties结尾的所有文件,以及存储库中已存在的所有子文件夹和文件中的所有文件。我试过了,但没有成功

    我这里有两个问题

  • 对于具有特定文件名格式的文件,git忽略模式可能是什么
  • 以及如何停止跟踪现有的或已经添加到git存储库的文件 您知道git存储库中的“.gitignore”文件吗?


    请尝试下列选项之一:
    ***-version.properties
    *version.properties
    或只是
    *.properties
    您也可以使用**匹配任何子目录,我想这就是您要查找的

    **/*-version.properties
    

    您需要在
    .git
    文件所在的同一级别上创建名为
    .gitignore
    的文件。只需将
    ***-version.properties
    放在这个文件中,git就会在签入时忽略这些文件。您可能还希望忽略其他一些文件,如IDE创建的或生成的文件。我建议你看看一些资源


    如果要完全忽略它们(即不跟踪它们),需要先删除它们:

    git rm **/*-version.properties
    
    然后,在.gitignore文件中使用一个简单的
    *-version.properties
    就足够了(不需要
    **/


    但是如果您想跟踪它们,但忽略它们的本地修改,那么您需要一个简单的
    git checkout HEAD
    命令。

    .gitinore将只阻止未跟踪的文件。如果您已经添加了文件,它将继续跟踪文件。您应该检查它。是的,文件已经添加到存储库中。哦,这就是它跟踪文件的原因。谢谢您的回答,但理解干净的过滤器驱动程序很难。