Browse Source

builtin-commit: remove .git/SQUASH_MSG upon successful commit

After doing a merge --squash, and commit afterwards, the commit message
template SQUASH_MSG in the git directory is not removed, which means that
the content of SQUASH_MSG is used as default commit message for all
subsequent commits.  So have git commit remove the file SQUASH_MSG from
the git directory upon a successful commit.

The problem was discovered by Frédéric Brière, reported through
 http://bugs.debian.org/464656

Signed-off-by: Gerrit Pape <pape@smarden.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Gerrit Pape 17 years ago committed by Junio C Hamano
parent
commit
5a95b85566
  1. 1
      builtin-commit.c

1
builtin-commit.c

@ -929,6 +929,7 @@ int cmd_commit(int argc, const char **argv, const char *prefix)


unlink(git_path("MERGE_HEAD")); unlink(git_path("MERGE_HEAD"));
unlink(git_path("MERGE_MSG")); unlink(git_path("MERGE_MSG"));
unlink(git_path("SQUASH_MSG"));


if (commit_index_files()) if (commit_index_files())
die ("Repository has been updated, but unable to write\n" die ("Repository has been updated, but unable to write\n"

Loading…
Cancel
Save