我有一个存储库文件,Hello.java。当我编译它时,会生成一个额外的Hello.class文件。
我在.gitignore文件中为Hello.class创建了一个条目。然而,该文件似乎仍然被跟踪。
如何让Git忽略Hello.class?
我有一个存储库文件,Hello.java。当我编译它时,会生成一个额外的Hello.class文件。
我在.gitignore文件中为Hello.class创建了一个条目。然而,该文件似乎仍然被跟踪。
如何让Git忽略Hello.class?
当前回答
我已经尝试了-假设-不变和。gitignore,但都没有工作得很好。它们使得切换分支和合并来自其他分支的变更变得困难。这是我的解决方案:
提交时,我手动从更改列表中删除这些文件
在我取出之前,我会把修改过的文件藏起来。抽完之后,我再抽一次。
git藏 git拉 Git隐藏pop
步骤3有时会触发合并,并可能导致需要解决的冲突,这是一件好事。
这允许我保留不与团队中的其他人共享的本地更改。
其他回答
如果之前添加了任何文件到Git中,那么删除该文件并在.gitignore中添加该文件。
示例:如果有麻烦忽略包。在添加SPM依赖项时生成的解析文件。
我添加了以下行到我的.gitignore文件:
Packages/
Package.pins
Package.resolved
*.xcworkspace
并拆下了包裹。解决文件。 现在Git开始忽略我的包。解决文件。
我有类似的问题与文件“dump.rdb”。 我尝试以各种方式将该文件添加到.gitignore文件中,但只有一种方式有效。
在.gitignore文件的末尾添加您的文件名
注意:在其他任何地方添加文件都不起作用。
例如:https://gitlab.com/gitlab-org/gitlab-ce/raw/b3ad3f202478dd88a3cfe4461703bc3df1019f90/.gitignore
在.git/info/exclude中添加以下行: Hello.class
你也可以使用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