【发布时间】:2019-09-25 04:23:10
【问题描述】:
在 IntelliJ 中,未版本化的文件以红色突出显示。我确实不希望它们出现在我的 git repo 中。这些可能是我正在处理的各种包中的临时 .java 文件。
但是,昨晚我不小心添加了数百个未版本控制的文件并提交了它们。我没有推他们。所有这些红色文件现在都变成白色了:(
我尝试对我最近推送的提交进行硬重置,比如说20a482h
我做了git reset --hard 20a482h,但文件仍然是白色的。
如果我执行Git > Push,它会显示一个包含 5 个提交的列表!!我去将我的本地文件重置为昨晚发生这种情况之前的确切状态。
如何使它们再次全部变红,并且未版本化?
git status
On branch origin
Your branch is up to date with 'origin'.
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: .gitignore
Untracked files:
(use "git add <file>..." to include in what will be committed)
code/src/main/java/comm/UnwantedFile1.java
code/src/main/java/comm/UnwantedFile2.java
..... 200 + files ....
但是,上面没有列出许多“白色”文件。我希望它们再次变红,只是在我的本地文件中,但没有其他地方。
.gitignore
*.iml
.idea
*.css
/app-layout-demo/src/main/webapp/VAADIN/themes/demo/styles.scss.cache
/app-layout-addon/src/main/polymer/bower_components/
/app-layout-addon/src/main/polymer/build/
### Java template
# Compiled class file
*.class
# Log file
*.log
# BlueJ files
*.ctxt
# Mobile Tools for Java (J2ME)
.mtj.tmp/
# Package Files #
*.jar
*.war
*.ear
*.zip
*.tar.gz
*.rar
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
例如,给定下面的“帮助”包。文件QuickTip.java 不应该是白色的,它应该是红色的。现在它是版本化的,将包含在任何提交/推送中。 Help 中的其他 2 个文件应保持版本化。
如何解压各种包中的 200 多个文件?
【问题讨论】:
-
你能显示
git status的输出和.gitignore的内容吗? -
当然,我已经编辑了我的答案。顺便说一句,我刚刚做了一个硬重置 HEAD~4 来重置过去的 4 次提交,这就是为什么它说我是最新的。如果我在 IntelliJ 中执行
Git>Push,它会显示没有提交。但是许多.java文件是白色的,我希望它们恢复为红色,就像昨晚我意外提交它们之前一样。 -
所以 git 状态确实表明您修改了 .gitignore。你对那个文件做了什么改变?如果您将该文件重置为“干净”状态并再次尝试 git status 会怎样?
-
我认为
.gitignore的更改是由于我事后删除了.java文件造成的。我刚刚从gitignore中删除了底部线,所以就像昨晚一样。如果我这样做git status它仍然说我是最新的。现在我的 gitignore 看起来和我的问题完全一样。 -
我在我的问题中添加了一张小图片,以更好地解释我的困境。