在子文件夹中将.gitignore与* .pyc一起使用

G.A*_*.A. 7 python git gitignore

我发现在python 3中,我的应用程序的每个子文件夹中都有一个__pycache__,当然* .pyc文件也会在其中创建。在我应用程序根文件夹的.gitignore文件中,我可以简单地放置:

**/__pycache__
**/*.pyc
Run Code Online (Sandbox Code Playgroud)

在以后创建的所有子文件夹中忽略这些?还是我需要在每个子文件夹中放置一个.gitignore?

在相关说明中,我如何检查所有未跟踪(忽略)的内容。我尝试了“ git status -u”,它没有显示__pycache__或.pyc文件为未跟踪状态。

Von*_*onC 7

您不需要**/

 __pycache__/
 *.pyc
Run Code Online (Sandbox Code Playgroud)

那应该足够了。

参见例如gitignore.io/python
请注意添加尾随/以忽略文件夹的做法。

使用git check-ignore -v -- afile我在2013年9月提到的Git 1.8.2+)检查哪个规则忽略文件。
如果该文件夹已被跟踪:

git rm --cached -r __pycache__/
Run Code Online (Sandbox Code Playgroud)

AndréDuarte 在评论中添加:

调整后gitignore,我必须对每个文件执行此操作,因此我呼吁您awk寻求帮助:

git status | grep pycache | awk {'print $3'} | xargs git reset HEAD"
Run Code Online (Sandbox Code Playgroud)

  • 这应该被标记为这个问题的正确答案 (2认同)