當且僅當存在另一個名爲foo.txe
的文件時,我想告訴git
忽略名爲foo.ext
的文件。我幾乎可以肯定,這不能用.gitignore
語法來完成,但也許有其他棘手的方法,我想不出來?如何告訴git忽略某個文件當且僅當另一個文件存在?
使用示例:我經常將LaTeX文檔的圖形存儲在名爲figures
的子目錄中。我通常用Xfig來設計我的數字。我的makefile調用fig2dev
來從figures/foo.fig
源對文件:
figures/foo.pdf
,爲顯卡部分PDF文件,figures/foo.pdf_t
,文本一個LaTeX文件,與includegraphics
命令包括PDF。
由於生成這兩個文件,我想git
忽略它們。我可以將兩個簡單的排除模式添加到我的.gitignore
文件中,但它也發生在我的一些數字是純PDF格式,而不是從其他來源生成的。當然,我想git
不要忽略這些figures/bar.pdf
文件。
我想是這樣補充:
/\(**\)/figures/\(*\).fig: /\1/figures/\2.pdf /\1/figures/\2.pdf_t
我.gitignore
文件,這意味着任何文件名爲/<some_path>/figures/<some_name>.pdf
或/<some_path>/figures/<some_name>.pdf_t
應該被忽略當且僅當具有相同<some_path>
存在一個名爲/<some_path>/figures/<some_name>.fig
文件<some_name>
。
可能的複製文件而不同後綴名的文件存在](http://stackoverflow.com/questions/28325195/gitignore-a-file-if-file-with-different-extension-exists) –