summaryrefslogtreecommitdiff
path: root/fmt-merge-msg.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2022-01-05 22:01:29 (GMT)
committerJunio C Hamano <gitster@pobox.com>2022-01-05 22:01:30 (GMT)
commitbb14cfdfd74c37f4319405eaebce0691c5b51db0 (patch)
treeff830f599931dd6952e354ffd1ba0b2bedea8a76 /fmt-merge-msg.c
parenta16548404789771fd3ee69f301893a08ef268bb2 (diff)
parentbd2bc94252a47443e19d366f8cc9626d4f92df7a (diff)
downloadgit-bb14cfdfd74c37f4319405eaebce0691c5b51db0.zip
git-bb14cfdfd74c37f4319405eaebce0691c5b51db0.tar.gz
git-bb14cfdfd74c37f4319405eaebce0691c5b51db0.tar.bz2
Merge branch 'jc/merge-detached-head-name'
The default merge message prepared by "git merge" records the name of the current branch; the name can be overridden with a new option to allow users to pretend a merge is made on a different branch. * jc/merge-detached-head-name: merge: allow to pretend a merge is made into a different branch
Diffstat (limited to 'fmt-merge-msg.c')
-rw-r--r--fmt-merge-msg.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/fmt-merge-msg.c b/fmt-merge-msg.c
index e4f7810..e5c0aff 100644
--- a/fmt-merge-msg.c
+++ b/fmt-merge-msg.c
@@ -650,12 +650,15 @@ int fmt_merge_msg(struct strbuf *in, struct strbuf *out,
memset(&merge_parents, 0, sizeof(merge_parents));
- /* get current branch */
+ /* learn the commit that we merge into and the current branch name */
current_branch = current_branch_to_free =
resolve_refdup("HEAD", RESOLVE_REF_READING, &head_oid, NULL);
if (!current_branch)
die("No current branch");
- if (starts_with(current_branch, "refs/heads/"))
+
+ if (opts->into_name)
+ current_branch = opts->into_name;
+ else if (starts_with(current_branch, "refs/heads/"))
current_branch += 11;
find_merge_parents(&merge_parents, in, &head_oid);