Version control 有没有一种方法可以从makefile生成gitignore?

Version control 有没有一种方法可以从makefile生成gitignore?,version-control,makefile,Version Control,Makefile,我有很多文件,比如JavaScript、HTML,甚至是自动生成的C和C头(.h)文件,所以它们出现在makefile中,就像 myfile.js: myfile.js.tmpl 等等。我希望版本控制系统忽略所有这些目标文件。我正在使用git,但这个问题不是git特有的。是否有一个实用程序或技巧可以从makefile生成忽略文件(如.gitinore) (如果没有这样的工具,我可以创建一个脚本来创建一个工具,但在此之前,我只是检查我没有错过一些明显的工具或方法。)一种方法是从一个干净的签

我有很多文件,比如JavaScript、HTML,甚至是自动生成的C和C头(.h)文件,所以它们出现在makefile中,就像

myfile.js:    myfile.js.tmpl
等等。我希望版本控制系统忽略所有这些目标文件。我正在使用git,但这个问题不是git特有的。是否有一个实用程序或技巧可以从makefile生成忽略文件(如
.gitinore


(如果没有这样的工具,我可以创建一个脚本来创建一个工具,但在此之前,我只是检查我没有错过一些明显的工具或方法。)

一种方法是从一个干净的签出开始,进行构建,然后运行一个
git status
,找出哪些文件未被跟踪。将这些文件(或合适的模式)添加到
.gitignore
文件中


Makefiles可能非常复杂,要知道它们做了什么,唯一的方法可能就是实际运行它们。

一种方法是从一个干净的签出开始,执行一个构建,然后运行一个
git status
来找出哪些文件未被跟踪。将这些文件(或合适的模式)添加到
.gitignore
文件中


Makefiles可能非常复杂,要了解它们的功能,唯一的方法可能就是实际运行它们。

这是一个好主意,但不幸的是不适合我的问题。我已经愚蠢地将这些文件添加到了版本控制中,所以我需要删除它们,然后保持删除状态。@Kinopiko:如果您的Makefile有一个“clean”函数,请运行该函数,然后再运行
git status
,以找出哪些文件被clean删除。然后您可以
git add-u
git commit
从版本控制中删除这些文件。如果你没有“清理”功能,你必须先手动删除这些文件。这是一个好主意,但不幸的是不适合我的问题。我已经愚蠢地将这些文件添加到了版本控制中,所以我需要删除它们,然后保持删除状态。@Kinopiko:如果您的Makefile有一个“clean”函数,请运行该函数,然后再运行
git status
,以找出哪些文件被clean删除。然后您可以
git add-u
git commit
从版本控制中删除这些文件。如果您没有“清理”功能,则必须先手动删除这些文件。