diff --git a/builtin-rm.c b/builtin-rm.c
index 50ae6d54011fad89387f0d56ce7a4591d07874f3..b7126e3e25d4f52ae8c4a120d524a24c11129785 100644 (file)
--- a/builtin-rm.c
+++ b/builtin-rm.c
|| hashcmp(ce->sha1, sha1))
staged_changes = 1;
- if (local_changes && staged_changes)
+ if (local_changes && staged_changes &&
+ !(index_only && is_empty_blob_sha1(ce->sha1)))
errs = error("'%s' has staged content different "
"from both the file and the HEAD\n"
"(use -f to force removal)", name);
if (read_cache() < 0)
die("index file corrupt");
+ refresh_cache(REFRESH_QUIET);
pathspec = get_pathspec(prefix, argv);
seen = NULL;