notes: Don't create (empty) commit when removing non-existing notes
Extend remove_note() in the notes API to return whether or not a note was actually removed. Use this in 'git notes remove' to skip the creation of a notes commit when no notes were actually removed. Also add a test illustrating the change in behavior. Signed-off-by: Johan Herland <johan@herland.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
d8a9480384
commit
1ee1e43df3
@ -365,6 +365,13 @@ c18dc024e14f08d18d14eea0d747ff692d66d6a3 1584215f1d29c65e99c6c6848626553fdd07fd7
|
||||
c9c6af7f78bc47490dbf3e822cf2f3c24d4b9061 268048bfb8a1fb38e703baceb8ab235421bf80c5
|
||||
EOF
|
||||
|
||||
test_expect_success 'removing non-existing note should not create new commit' '
|
||||
git rev-parse --verify refs/notes/commits > before_commit &&
|
||||
test_must_fail git notes remove HEAD^ &&
|
||||
git rev-parse --verify refs/notes/commits > after_commit &&
|
||||
test_cmp before_commit after_commit
|
||||
'
|
||||
|
||||
test_expect_success 'list notes with "git notes list"' '
|
||||
git notes list > output &&
|
||||
test_cmp expect output
|
||||
|
Reference in New Issue
Block a user