Skip to content

Commit

Permalink
format-patch: Add format.subjectprefix config option
Browse files Browse the repository at this point in the history
This change lets you use the format.subjectprefix config option to override the
default subject prefix.

Signed-off-by: Adam Roben <aroben@apple.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
Adam Roben authored and Junio C Hamano committed Jul 3, 2007
1 parent 05dcd69 commit dbd2144
Show file tree
Hide file tree
Showing 6 changed files with 76 additions and 3 deletions.
5 changes: 3 additions & 2 deletions Documentation/git-format-patch.txt
Original file line number Diff line number Diff line change
Expand Up @@ -126,12 +126,13 @@ not add any suffix.
CONFIGURATION
-------------
You can specify extra mail header lines to be added to each
message in the repository configuration. Also you can specify
the default suffix different from the built-in one:
message in the repository configuration. You can also specify
new defaults for the subject prefix and file suffix.

------------
[format]
headers = "Organization: git-foo\n"
subjectprefix = CHANGE
suffix = .txt
------------

Expand Down
9 changes: 9 additions & 0 deletions builtin-log.c
Original file line number Diff line number Diff line change
Expand Up @@ -265,6 +265,7 @@ static int istitlechar(char c)

static char *extra_headers = NULL;
static int extra_headers_size = 0;
static const char *fmt_patch_subject_prefix = "PATCH";
static const char *fmt_patch_suffix = ".patch";

static int git_format_config(const char *var, const char *value)
Expand All @@ -290,6 +291,13 @@ static int git_format_config(const char *var, const char *value)
if (!strcmp(var, "diff.color") || !strcmp(var, "color.diff")) {
return 0;
}
if (!strcmp(var, "format.subjectprefix")) {
if (!value)
die("format.subjectprefix without value");
fmt_patch_subject_prefix = xstrdup(value);
return 0;
}

return git_log_config(var, value);
}

Expand Down Expand Up @@ -459,6 +467,7 @@ int cmd_format_patch(int argc, const char **argv, const char *prefix)
rev.diffopt.msg_sep = "";
rev.diffopt.recursive = 1;

rev.subject_prefix = fmt_patch_subject_prefix;
rev.extra_headers = extra_headers;

/*
Expand Down
1 change: 0 additions & 1 deletion revision.c
Original file line number Diff line number Diff line change
Expand Up @@ -667,7 +667,6 @@ void init_revisions(struct rev_info *revs, const char *prefix)
revs->min_age = -1;
revs->skip_count = -1;
revs->max_count = -1;
revs->subject_prefix = "PATCH";

revs->prune_fn = NULL;
revs->prune_data = NULL;
Expand Down
2 changes: 2 additions & 0 deletions t/t4013-diff-various.sh
Original file line number Diff line number Diff line change
Expand Up @@ -242,6 +242,8 @@ format-patch --inline --stdout initial..side
format-patch --inline --stdout initial..master^
format-patch --inline --stdout initial..master
format-patch --inline --stdout --subject-prefix=TESTCASE initial..master
config format.subjectprefix DIFFERENT_PREFIX
format-patch --inline --stdout initial..master^^
diff --abbrev initial..side
diff -r initial..side
Expand Down
2 changes: 2 additions & 0 deletions t/t4013/diff.config_format.subjectprefix_DIFFERENT_PREFIX
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
$ git config format.subjectprefix DIFFERENT_PREFIX
$
60 changes: 60 additions & 0 deletions t/t4013/diff.format-patch_--inline_--stdout_initial..master^^
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
$ git format-patch --inline --stdout initial..master^^
From 1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44 Mon Sep 17 00:00:00 2001
From: A U Thor <author@example.com>
Date: Mon, 26 Jun 2006 00:01:00 +0000
Subject: [DIFFERENT_PREFIX] Second
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="------------g-i-t--v-e-r-s-i-o-n"

This is a multi-part message in MIME format.
--------------g-i-t--v-e-r-s-i-o-n
Content-Type: text/plain; charset=UTF-8; format=fixed
Content-Transfer-Encoding: 8bit


This is the second commit.
---
dir/sub | 2 ++
file0 | 3 +++
file2 | 3 ---
3 files changed, 5 insertions(+), 3 deletions(-)
delete mode 100644 file2
--------------g-i-t--v-e-r-s-i-o-n
Content-Type: text/x-patch; name="1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44.diff"
Content-Transfer-Encoding: 8bit
Content-Disposition: inline; filename="1bde4ae5f36c8d9abe3a0fce0c6aab3c4a12fe44.diff"

diff --git a/dir/sub b/dir/sub
index 35d242b..8422d40 100644
--- a/dir/sub
+++ b/dir/sub
@@ -1,2 +1,4 @@
A
B
+C
+D
diff --git a/file0 b/file0
index 01e79c3..b414108 100644
--- a/file0
+++ b/file0
@@ -1,3 +1,6 @@
1
2
3
+4
+5
+6
diff --git a/file2 b/file2
deleted file mode 100644
index 01e79c3..0000000
--- a/file2
+++ /dev/null
@@ -1,3 +0,0 @@
-1
-2
-3

--------------g-i-t--v-e-r-s-i-o-n--


$

0 comments on commit dbd2144

Please sign in to comment.