summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: b941ffa)
raw | patch | inline | side by side (parent: b941ffa)
author | Junio C Hamano <gitster@pobox.com> | |
Mon, 2 Jul 2007 02:00:08 +0000 (19:00 -0700) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Tue, 3 Jul 2007 03:57:45 +0000 (20:57 -0700) |
When "git push" is run without any refspec (neither on the
command line nor in the config), we used to push "matching refs"
in the sense that anything under refs/ hierarchy that exist on
both ends were updated. This used to be a sane default for
publishing your repository to another back when we did not have
refs/remotes/ hierarchy, but it does not make much sense these
days.
This changes the semantics to push only "matching branches".
Signed-off-by: Junio C Hamano <gitster@pobox.com>
command line nor in the config), we used to push "matching refs"
in the sense that anything under refs/ hierarchy that exist on
both ends were updated. This used to be a sane default for
publishing your repository to another back when we did not have
refs/remotes/ hierarchy, but it does not make much sense these
days.
This changes the semantics to push only "matching branches".
Signed-off-by: Junio C Hamano <gitster@pobox.com>
remote.c | patch | blob | history |
diff --git a/remote.c b/remote.c
index 500ca4d968753485ac38d44e238e93ab86372c1c..cf98a44367cfad364871af4f1e191a9e7412562d 100644 (file)
--- a/remote.c
+++ b/remote.c
if (!pat)
continue;
}
+ else if (prefixcmp(src->name, "refs/heads/"))
+ /*
+ * "matching refs"; traditionally we pushed everything
+ * including refs outside refs/heads/ hierarchy, but
+ * that does not make much sense these days.
+ */
+ continue;
if (pat) {
const char *dst_side = pat->dst ? pat->dst : pat->src;