假设,我从许多新提交(包括删除文件的提交)的源中撤出。如何轻松找到文件,所以我可以执行'git rm --cached'并将它们预先添加到.gitignore中。我以这种方式删除了一些特定于IDE的配置文件。
除了查看提交内容之外,还有其他解决方案吗?
答案 0 :(得分:2)
如果您避免 git pull
,则可以执行此操作。
请记住,git pull
表示运行git fetch
,然后运行第二个Git命令。 git fetch
步骤很安全:自己运行即可。 second 命令(通常为git merge
)可以删除某些工作树文件。
有了提交后,即git fetch
步骤,您可以检查提交,以查看它们是否将删除您现有的任何跟踪文件。为此,只需使用--name-status
选项将当前索引与要合并的目标提交进行比较:
git diff --cached --name-status origin/master
例如。您可以添加--diff-filter=D
来检查要删除的文件,方法是移至origin/master
。
如果这表示您的文件将被删除,则可以执行自己的git rm --cached
,提交结果,然后重复git diff
以验证是否将不再删除文件。合并;然后运行:
git merge origin/master
执行git pull
的后半部分。