mirror of
https://github.com/git/git
synced 2024-08-27 03:29:21 +00:00
Merge branch 'rl/remote-allow-missing-branch-name-merge' into maint
"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
0d9f9424ad
|
@ -769,7 +769,9 @@ static int rm(int argc, const char **argv)
|
||||||
strbuf_reset(&buf);
|
strbuf_reset(&buf);
|
||||||
strbuf_addf(&buf, "branch.%s.%s",
|
strbuf_addf(&buf, "branch.%s.%s",
|
||||||
item->string, *k);
|
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' '
|
test_expect_success 'rename errors out early when deleting non-existent branch' '
|
||||||
(
|
(
|
||||||
cd test &&
|
cd test &&
|
||||||
|
|
Loading…
Reference in a new issue