我有一个存储库文件,Hello.java。当我编译它时,会生成一个额外的Hello.class文件。

我在.gitignore文件中为Hello.class创建了一个条目。然而,该文件似乎仍然被跟踪。

如何让Git忽略Hello.class?


当前回答

首先创建一个.gitignore文件,我们必须在其中存储要忽略的文件和目录的名称。

忽略一个目录;

name_of_directory/

忽略文件;

name_of_file

我们不需要提供要忽略的文件或目录的完整路径;我们只需要提供它的名字。

如果你想忽略所有具有相同扩展名的文件;

*.pyc  #will ignore all files with pyc extention

此外,上述内容仅在未将文件添加到Git时才会第一次起作用。但是,如果我的错误是您向Git添加了一个文件,现在您希望在其余的提交中忽略它,您需要首先通过运行以下命令清除关于该文件的Git缓存;

git rm -r --cached <path_of_the_file>

其余部分是相同的,即将名称添加到.gitignore文件中。

其他回答

如何忽略新文件

在全球范围内

将你想忽略的路径添加到你的.gitignore文件中(并提交它们)。这些文件条目也将应用于其他签出存储库的文件。

在本地

将你想忽略的路径添加到你的.git/info/exclude文件中。这些文件条目将只应用于您的本地工作副本。

如何忽略已更改的文件(临时)

为了忽略已更改的文件,将其列为已修改,您可以使用以下git命令:

git update-index --assume-unchanged <file1> <file2> <file3>

要恢复这种无知,请使用以下命令:

git update-index --no-assume-unchanged <file1> <file2> <file3>

你也可以使用Sourcetree,在你添加到分支并修改过的文件上按下rmb,然后选择“停止跟踪”。这个文件现在将被指定为一个问号图标,当你再次在这个文件上rmb时,你现在可以选择“忽略”。这将通过相对路径将特定文件添加到gitgnore中。

您还可以使用.gitattributes(而不是.gitignore)来排除整个文件类型。该文件是不言自明的,但我将内容粘贴在这里以供参考。注意最后一行(*.class二进制):

# Denote all files that are truly binary and should not be modified.
*.png binary
*.jpg binary
*.gif binary
*.ico binary
*.mo binary
*.pdf binary
*.phar binary
*.class binary

转到.gitignore文件并添加您想要忽略的文件的条目 执行命令git rm -r——cached。 现在运行git add。

你应该这样写

*.class

到你的。gitignore文件。