28

.h我正在处理的项目中的头文件中有一个小冲突。这个项目在 Git 中被跟踪。

幸运的是,冲突很容易解决。我用了

git mergetool

opendiff并在我的 Mac 上选择了似乎是 FileMerge的默认 ( )。我进行了适当的更改,保存了文件并关闭了。

然后Git问我合并是否成功,我说是:

Was the merge successful? [y/n] y

但现在,我有:

> git st
# On branch develop
# Changes to be committed:
#   modified:   MyHeader.h
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#   MyHeader.h.BACKUP.52920.h
#   MyHeader.h.BASE.52920.h
#   MyHeader.h.LOCAL.52920.h
#   MyHeader.h.REMOTE.52920.h
#   MyHeader.h.orig

哪些额外的垃圾冲突文件是由 FileMerge 创建的,哪些是由 Git 创建的?

更重要的是:我如何删除它们?

4

3 回答 3

53

您可以像删除任何其他文件一样简单地删除它们。例如:

rm MyHeader.h.orig

或者,如果没有其他未跟踪的文件,那么在你提交之后

git commit -a

你可以清理你的存储库

git clean -n
git clean -f

git clean -n会告诉你git clean -f会做什么,所以你可以确定这是你想要的。

于 2013-03-12T23:09:03.237 回答
9

如果它们是唯一未跟踪的文件,您可以使用git clean删除它们。使用标志运行一次-n以查看将删除的内容,然后如果确定,请使用-f. 如果您有要保留的未跟踪文件,请不要使用它!

于 2013-03-12T23:05:53.360 回答
1

首先提交您的合并。

一旦您对一切正常感到满意,只需手动删除这些额外的文件(rm <filename>例如,使用 )。

于 2013-03-12T23:12:13.450 回答