Merge branch 'ac/auto-comment-char-fix'

"git commit" that concludes a conflicted merge failed to notice and remove
existing comment added automatically (like "# Conflicts:") when the
core.commentstring is set to 'auto'.

* ac/auto-comment-char-fix:
  config: set comment_line_str to "#" when core.commentChar=auto
  commit: avoid scanning trailing comments when 'core.commentChar' is "auto"
This commit is contained in:
Junio C Hamano
2025-07-28 12:02:34 -07:00
3 changed files with 22 additions and 3 deletions

View File

@@ -1534,9 +1534,11 @@ static int git_default_core_config(const char *var, const char *value,
!strcmp(var, "core.commentstring")) {
if (!value)
return config_error_nonbool(var);
else if (!strcasecmp(value, "auto"))
else if (!strcasecmp(value, "auto")) {
auto_comment_line_char = 1;
else if (value[0]) {
FREE_AND_NULL(comment_line_str_to_free);
comment_line_str = "#";
} else if (value[0]) {
if (strchr(value, '\n'))
return error(_("%s cannot contain newline"), var);
comment_line_str = value;