From: Thomas Gummerer <t.gummerer@gmail.com>
To: git@vger.kernel.org, Thomas Gummerer <t.gummerer@gmail.com>
Cc: sunshine@sunshineco.com, peff@peff.net,
Johannes.Schindelin@gmx.de, gitster@pobox.com
Subject: [PATCH v3 0/4] git remote improvements
Date: Tue, 16 Feb 2016 10:47:48 +0100 [thread overview]
Message-ID: <1455616072-20838-1-git-send-email-t.gummerer@gmail.com> (raw)
In-Reply-To: <1455575984-24348-1-git-send-email-t.gummerer@gmail.com>
Previous rounds are at $gmane/286214 and $gmane/286278. Thanks to
Peff and Eric for the reviews on the previous round.
This version changes two checks in [1/4], and uses test_config in the
tests instead of calling git config directly.
Interdiff below:
diff --git a/remote.c b/remote.c
index d10ae00..f001681 100644
--- a/remote.c
+++ b/remote.c
@@ -358,17 +358,17 @@ static int handle_config(const char *key, const char *value, void *cb)
return 0;
/* Handle remote.* variables */
- if (!strcmp(subkey, "pushdefault"))
+ if (!name && !strcmp(subkey, "pushdefault"))
return git_config_string(&pushremote_name, key, value);
+ if (!name)
+ return 0;
/* Handle remote.<name>.* variables */
- if (*(name ? name : subkey) == '/') {
+ if (*name == '/') {
warning("Config remote shorthand cannot begin with '/': %s",
- name ? name : subkey);
+ name);
return 0;
}
- if (!name)
- return 0;
remote = make_remote(name, namelen);
remote->origin = REMOTE_CONFIG;
if (!strcmp(subkey, "mirror"))
diff --git a/t/t5505-remote.sh b/t/t5505-remote.sh
index 142ae62..94079a0 100755
--- a/t/t5505-remote.sh
+++ b/t/t5505-remote.sh
@@ -158,18 +158,15 @@ test_expect_success 'rename errors out early when deleting non-existent branch'
'
test_expect_success 'add existing foreign_vcs remote' '
- git config --add remote.foo.vcs "bar" &&
- test_when_finished git remote rm foo &&
+ test_config remote.foo.vcs bar &&
echo "fatal: remote foo already exists." >expect &&
test_must_fail git remote add foo bar 2>actual &&
test_i18ncmp expect actual
'
test_expect_success 'add existing foreign_vcs remote' '
- git config --add remote.foo.vcs "bar" &&
- git config --add remote.bar.vcs "bar" &&
- test_when_finished git remote rm foo &&
- test_when_finished git remote rm bar &&
+ test_config remote.foo.vcs bar &&
+ test_config remote.bar.vcs bar &&
echo "fatal: remote bar already exists." >expect &&
test_must_fail git remote rename foo bar 2>actual &&
test_i18ncmp expect actual
Thomas Gummerer (4):
remote: use parse_config_key
remote: simplify remote_is_configured()
remote: actually check if remote exits
remote: use remote_is_configured() for add and rename
builtin/fetch.c | 5 ++--
builtin/remote.c | 23 +++++++---------
remote.c | 82 +++++++++++++++++++++++--------------------------------
remote.h | 3 +-
t/t5505-remote.sh | 33 ++++++++++++++++++++++
5 files changed, 81 insertions(+), 65 deletions(-)
--
2.7.1.410.g6faf27b
next prev parent reply other threads:[~2016-02-16 9:47 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-15 22:39 [PATCH v2 0/4] git remote improvements Thomas Gummerer
2016-02-15 22:39 ` [PATCH v2 1/4] remote: use parse_config_key Thomas Gummerer
2016-02-15 23:04 ` Jeff King
2016-02-16 0:13 ` Thomas Gummerer
2016-02-15 22:39 ` [PATCH v2 2/4] remote: simplify remote_is_configured() Thomas Gummerer
2016-02-15 22:39 ` [PATCH v2 3/4] remote: actually check if remote exits Thomas Gummerer
2016-02-15 22:39 ` [PATCH v2 4/4] remote: use remote_is_configured() for add and rename Thomas Gummerer
2016-02-15 22:52 ` Eric Sunshine
2016-02-15 23:09 ` Jeff King
2016-02-16 0:16 ` Thomas Gummerer
2016-02-16 9:47 ` Thomas Gummerer [this message]
2016-02-16 9:47 ` [PATCH v3 1/4] remote: use parse_config_key Thomas Gummerer
2016-02-16 9:47 ` [PATCH v3 2/4] remote: simplify remote_is_configured() Thomas Gummerer
2016-02-16 9:47 ` [PATCH v3 3/4] remote: actually check if remote exits Thomas Gummerer
2016-02-16 9:47 ` [PATCH v3 4/4] remote: use remote_is_configured() for add and rename Thomas Gummerer
2016-02-16 15:52 ` [PATCH v3 0/4] git remote improvements Jeff King
2016-02-16 21:36 ` Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1455616072-20838-1-git-send-email-t.gummerer@gmail.com \
--to=t.gummerer@gmail.com \
--cc=Johannes.Schindelin@gmx.de \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=peff@peff.net \
--cc=sunshine@sunshineco.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).