diff options
author | Paolo Bonzini <bonzini@gnu.org> | 2008-04-17 13:17:20 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-04-20 18:49:22 -0700 |
commit | 84bb2dfd9f4873c9ca19537efe62219b09ec03bf (patch) | |
tree | 4490819e5489268b9fc9b9eec3da8ec87c8774fa /builtin-remote.c | |
parent | 5909ca92d8b2c6a0534597f52f7733ff61a64d63 (diff) | |
download | git-84bb2dfd9f4873c9ca19537efe62219b09ec03bf.tar.gz |
Add a remote.*.mirror configuration option
This patch adds a remote.*.mirror configuration option that,
when set, automatically puts git-push in --mirror mode for that
remote.
Furthermore, the option is set automatically by `git remote
add --mirror'.
The code in remote.c to parse remote.*.skipdefaultupdate
had a subtle problem: a comment in the code indicated that
special care was needed for boolean options, but this care was
not used in parsing the option. Since I was touching related
code, I did this fix too.
[jc: and I further fixed up the "ignore boolean" code.]
Signed-off-by: Paolo Bonzini <bonzini@gnu.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin-remote.c')
-rw-r--r-- | builtin-remote.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/builtin-remote.c b/builtin-remote.c index a3ee1ac393..9d4432bcd5 100644 --- a/builtin-remote.c +++ b/builtin-remote.c @@ -117,6 +117,13 @@ static int add(int argc, const char **argv) return 1; } + if (mirror) { + strbuf_reset(&buf); + strbuf_addf(&buf, "remote.%s.mirror", name); + if (git_config_set(buf.buf, "yes")) + return 1; + } + if (fetch && fetch_remote(name)) return 1; |