Skip to contentSkip to conversation

Enable setting attach in .gitconfig for git-format-patch.

PATCH In review Jeremy White 3 participants 4 messages Jun 15, 2016 Documentation

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Enable setting attach in .gitconfig for git-format-patch.

In an attempt to keep us Thunderbird users from embarrassing ourselves.

---
 Documentation/git-format-patch.txt |    4 +++-
 builtin-log.c                      |   15 +++++++++++++++
 2 files changed, 18 insertions(+), 1 deletions(-)
Documentation/git-format-patch.txt +3 -1
index 11a7d77..2e8e94e 100644
@@ -174,7 +174,8 @@ CONFIGURATION
 -------------
 You can specify extra mail header lines to be added to each message
 in the repository configuration, new defaults for the subject prefix
-and file suffix, and number patches when outputting more than one.
+and file suffix, control attachements, and number patches when outputting
+more than one.
 
 ------------
 [format]
@@ -183,6 +184,7 @@ and file suffix, and number patches when outputting more than one.
 	suffix = .txt
 	numbered = auto
 	cc = <email>
+	attach [ = mime-boundary-string ]
 ------------
 
 
builtin-log.c +15 -0
index 2ae39af..1a8adde 100644
@@ -428,6 +428,8 @@ static const char *fmt_patch_suffix = ".patch";
 static int numbered = 0;
 static int auto_number = 1;
 
+static char *extra_attach = NULL;
+
 static char **extra_hdr;
 static int extra_hdr_nr;
 static int extra_hdr_alloc;
@@ -488,6 +490,14 @@ static int git_format_config(const char *var, const char *value, void *cb)
 		auto_number = auto_number && numbered;
 		return 0;
 	}
+	if (!strcmp(var, "format.attach")) {
+		if (value && strlen(value) > 0)
+			extra_attach = xstrdup(value);
+		else
+			extra_attach = xstrdup(git_version_string);
+		return 0;
+	}
+
 
 	return git_log_config(var, value, cb);
 }
@@ -787,6 +797,11 @@ int cmd_format_patch(int argc, const char **argv, const char *prefix)
 
 	rev.subject_prefix = fmt_patch_subject_prefix;
 
+	if (extra_attach) {
+		rev.mime_boundary = extra_attach;
+		rev.no_inline = 1;
+	}
+
 	/*
 	 * Parse the arguments before setup_revisions(), or something
 	 * like "git format-patch -o a123 HEAD^.." may fail; a123 is
#1 lore raw
Quoted 1 line · On Saturday 07 February 2009 15:56:31 Jeremy White wrote:

+static char *extra_attach = NULL;

The initializer is just noise here, yes? If the " = NULL" is not needed, we generally drop it.

Signature · 4 lines
Boyd Stephen Smith Jr.                   ,= ,-_-. =.
[email protected]                   ((_/)o o(\_))
ICQ: 514984 YM/AIM: DaTwinkDaddy         `-'(. .)`-'
http://iguanasuicide.net/                    \_/
#2 lore raw
In reply to Jeremy White

Hi,

Quoted 7 lines · Jeremy White

In an attempt to keep us Thunderbird users from embarrassing ourselves.

---
 Documentation/git-format-patch.txt |    4 +++-
 builtin-log.c                      |   15 +++++++++++++++
 2 files changed, 18 insertions(+), 1 deletions(-)

Pity. You attached the patch. So I do not quote the part where you use a strlen() > 0 which would better be a *value. But it would be nice to fix the issue.

Ciao,
Dscho

#3 lore raw
Quoted 1 line

Pity. You attached the patch. So I do not quote the part where you use a strlen() > 0 which would better be a *value. But it would be nice to fix the issue.

That's a good point; I'll resend. Thanks for the review.

Cheers,

Jeremy