summaryrefslogtreecommitdiff
path: root/wt-status.h
diff options
context:
space:
mode:
authorJosh Triplett <josh@joshtriplett.org>2024-02-27 09:16:09 (GMT)
committerJunio C Hamano <gitster@pobox.com>2024-02-27 17:40:46 (GMT)
commit688a0a751e9ee032be9fb70d7d63220bc85acae1 (patch)
tree74511084cdb4bc7539b685175b629f63d82e6358 /wt-status.h
parent0d464a4e6a5a19bd8fbea1deae22d48d14dccb01 (diff)
downloadgit-688a0a751e9ee032be9fb70d7d63220bc85acae1.zip
git-688a0a751e9ee032be9fb70d7d63220bc85acae1.tar.gz
git-688a0a751e9ee032be9fb70d7d63220bc85acae1.tar.bz2
commit: avoid redundant scissor line with --cleanup=scissors -v
`git commit --cleanup=scissors -v` prints two scissors lines: one at the start of the comment lines, and the other right before the diff. This is redundant, and pushes the diff further down in the user's editor than it needs to be. Make wt_status_add_cut_line() remember if it has added a cut line before, and avoid adding a redundant one. Add a test for this. Signed-off-by: Josh Triplett <josh@joshtriplett.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'wt-status.h')
-rw-r--r--wt-status.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/wt-status.h b/wt-status.h
index 819dcad..5e99ba4 100644
--- a/wt-status.h
+++ b/wt-status.h
@@ -130,6 +130,7 @@ struct wt_status {
int rename_score;
int rename_limit;
enum wt_status_format status_format;
+ unsigned char added_cut_line; /* boolean */
struct wt_status_state state;
struct object_id oid_commit; /* when not Initial */
@@ -147,7 +148,7 @@ struct wt_status {
size_t wt_status_locate_end(const char *s, size_t len);
void wt_status_append_cut_line(struct strbuf *buf);
-void wt_status_add_cut_line(FILE *fp);
+void wt_status_add_cut_line(struct wt_status *s);
void wt_status_prepare(struct repository *r, struct wt_status *s);
void wt_status_print(struct wt_status *s);
void wt_status_collect(struct wt_status *s);