繁体   English   中英

使用.gitignore忽略git status中的文件

[英]Using .gitignore to ignore files inside of git status

当我运行git status ,我有不相关的文件,我不想看。

例如:

M。gitignore
M as3-remote / .project
M perspective / swc / .project
M perspective / swf / .project
M scheduled-translator-framework / src / main / java / Importer.java
D scheduled-translator-framework / src / main / java / TranslatorTest.java
M ui-mecogis / swf / .project

我已经尝试编辑我的.gitignore,以便包括.projects我的.gitignore看起来像:

的.classpath
。项目
.settings
* .LOG
nbactions.xml
目标
.DS_Store

我只想跟踪和观察预定翻译器框架内的更改,我只想关注该特定文件夹中的.java文件。 我不希望任何其他内容出现在跟踪或未跟踪的无关内容中。 我该怎么做?

我认为这就是你需要的:

# in .gitignore
*
!scheduled-translator-framework/
!scheduled-translator-framework/*

和:

# in scheduled-translator-framework/.gitignore 
/*
!*/
!*.java

在项目的根目录中使用.gitignore我们:

  1. 忽略一切。
  2. Unignore scheduled-translator-framework/目录。
  3. Unignore scheduled-translator-framework/ 所有文件(稍后我们将处理此目录中的文件)。

scheduled-translator-framework/目录中使用.gitignore我们:

  1. 忽略此子目录中的所有内容。
  2. Unignore scheduled-translator-framework/所有子目录(下一步工作所必需的)。
  3. 取消当前目录(即scheduled-translator-framework/ )和所有子目录中的所有*java文件。

如果您偶然添加了索引或提交了一些您不想跟踪的文件,则可以使用以下命令取消暂存并将其从存储库中删除:

git rm --cached -r file/or/directory/path

从gitignore(5)手册页:

gitignore文件的目的是确保git未跟踪的某些文件保持未跟踪。

要忽略已跟踪的文件中未提交的更改,请使用git update-index --assume-unchanged

要停止跟踪当前跟踪的文件,请使用git rm --cached

git status显示.project文件夹,因为它们已被跟踪。
您需要从存储库中删除它们: git rm --cached a/b/.project

要忽略除特定文件夹上的所有* .java文件,您的.gitignore应如下所示:

*.java  
!a/specific/folder/*.java

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM