Merge branch 'rl/remote-allow-missing-branch-name-merge'
"git remote rm X", when a branch has remote X configured as the value of its branch.*.remote, tried to remove branch.*.remote and branch.*.merge and failed if either is unset. * rl/remote-allow-missing-branch-name-merge: remote: ignore failure to remove missing branch.<name>.merge
This commit is contained in:
commit
3e5c63943d
@ -769,7 +769,9 @@ static int rm(int argc, const char **argv)
|
||||
strbuf_reset(&buf);
|
||||
strbuf_addf(&buf, "branch.%s.%s",
|
||||
item->string, *k);
|
||||
git_config_set(buf.buf, NULL);
|
||||
result = git_config_set_gently(buf.buf, NULL);
|
||||
if (result && result != CONFIG_NOTHING_SET)
|
||||
die(_("could not unset '%s'"), buf.buf);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -153,6 +153,25 @@ test_expect_success 'remove errors out early when deleting non-existent branch'
|
||||
)
|
||||
'
|
||||
|
||||
test_expect_success 'remove remote with a branch without configured merge' '
|
||||
test_when_finished "(
|
||||
git -C test checkout master;
|
||||
git -C test branch -D two;
|
||||
git -C test config --remove-section remote.two;
|
||||
git -C test config --remove-section branch.second;
|
||||
true
|
||||
)" &&
|
||||
(
|
||||
cd test &&
|
||||
git remote add two ../two &&
|
||||
git fetch two &&
|
||||
git checkout -b second two/master^0 &&
|
||||
git config branch.second.remote two &&
|
||||
git checkout master &&
|
||||
git remote rm two
|
||||
)
|
||||
'
|
||||
|
||||
test_expect_success 'rename errors out early when deleting non-existent branch' '
|
||||
(
|
||||
cd test &&
|
||||
|
Loading…
Reference in New Issue
Block a user