Skip to content

Commit

Permalink
Merge branch 'jc/denoise-rm-to-resolve' into maint
Browse files Browse the repository at this point in the history
"git rm" to resolve a conflicted path leaked an internal message
"needs merge" before actually removing the path, which was
confusing.  This has been corrected.

* jc/denoise-rm-to-resolve:
  rm: resolving by removal is not a warning-worthy event
  • Loading branch information
gitster committed Jul 29, 2019
2 parents 2f72ebf + b2b1f61 commit 9c65991
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 1 deletion.
2 changes: 1 addition & 1 deletion builtin/rm.c
Original file line number Diff line number Diff line change
Expand Up @@ -273,7 +273,7 @@ int cmd_rm(int argc, const char **argv, const char *prefix)
parse_pathspec(&pathspec, 0,
PATHSPEC_PREFER_CWD,
prefix, argv);
refresh_index(&the_index, REFRESH_QUIET, &pathspec, NULL, NULL);
refresh_index(&the_index, REFRESH_QUIET|REFRESH_UNMERGED, &pathspec, NULL, NULL);

seen = xcalloc(pathspec.nr, 1);

Expand Down
13 changes: 13 additions & 0 deletions t/t3600-rm.sh
Original file line number Diff line number Diff line change
Expand Up @@ -252,6 +252,19 @@ test_expect_success 'choking "git rm" should not let it die with cruft' '
test_path_is_missing .git/index.lock
'

test_expect_success 'Resolving by removal is not a warning-worthy event' '
git reset -q --hard &&
test_when_finished "rm -f .git/index.lock msg && git reset -q --hard" &&
blob=$(echo blob | git hash-object -w --stdin) &&
for stage in 1 2 3
do
echo "100644 $blob $stage blob"
done | git update-index --index-info &&
git rm blob >msg 2>&1 &&
test_i18ngrep ! "needs merge" msg &&
test_must_fail git ls-files -s --error-unmatch blob
'

test_expect_success 'rm removes subdirectories recursively' '
mkdir -p dir/subdir/subsubdir &&
echo content >dir/subdir/subsubdir/file &&
Expand Down

0 comments on commit 9c65991

Please sign in to comment.