| author | Junio C Hamano <gitster@pobox.com> | |
| Tue, 8 Nov 2011 00:21:32 +0000 (16:21 -0800) | ||
| committer | Junio C Hamano <gitster@pobox.com> | |
| Wed, 9 Nov 2011 18:28:04 +0000 (10:28 -0800) | ||
| commit | 5231c633f2e54723d53a8cd928d9bc98b39dc35f | |
| tree | b7f624f3742c4baf285d1e59ee1a1dbab1198fee | tree | snapshot |
| parent | 274a5c06d525da8c9720ae60454fba6779523c52 | commit | diff |
commit: copy merged signed tags to headers of merge commit
Now MERGE_HEAD records the tag objects without peeling, we could record
the result of manual conflict resolution via "git commit" without losing
the tag information. Introduce a new "mergetag" multi-line header field to
the commit object, and use it to store the entire contents of each signed
tag merged.
A commit header that has a multi-line payload begins with the header tag
(e.g. "mergetag" in this case), SP, the first line of payload, LF, and all
the remaining lines have a SP inserted at the beginning.
In hindsight, it would have been better to make "merge --continue" as the
way to continue from such an interrupted merge, not "commit", but this is
a backward compatibility baggage we would need to carry around for now.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Now MERGE_HEAD records the tag objects without peeling, we could record
the result of manual conflict resolution via "git commit" without losing
the tag information. Introduce a new "mergetag" multi-line header field to
the commit object, and use it to store the entire contents of each signed
tag merged.
A commit header that has a multi-line payload begins with the header tag
(e.g. "mergetag" in this case), SP, the first line of payload, LF, and all
the remaining lines have a SP inserted at the beginning.
In hindsight, it would have been better to make "merge --continue" as the
way to continue from such an interrupted merge, not "commit", but this is
a backward compatibility baggage we would need to carry around for now.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
| builtin/commit.c | diff | blob | history | |
| commit.c | diff | blob | history | |
| commit.h | diff | blob | history |