* fetch branch blacklist
@ 2009-01-08 0:07 jidanni
2009-01-09 20:23 ` Jakub Narebski
0 siblings, 1 reply; 3+ messages in thread
From: jidanni @ 2009-01-08 0:07 UTC (permalink / raw)
To: git
If one wants to always fetch all except one remote branch, one cannot
just blacklist it, but must instead whitelist all the rest.
$ git branch -rd origin/man origin/html
Deleted remote branch origin/man.
Deleted remote branch origin/html.
Plus I edited them out of FETCH_HEAD. Nonetheless, back from the dead:
$ git pull
From git://git.kernel.org/pub/scm/git/git
* [new branch] html -> origin/html
* [new branch] man -> origin/man
The only solution is to change .git/config:
[remote "origin"]
url = git://git.kernel.org/pub/scm/git/git.git
# fetch = +refs/heads/*:refs/remotes/origin/*
fetch = +refs/heads/maint:refs/remotes/origin/maint
fetch = +refs/heads/master:refs/remotes/origin/master
fetch = +refs/heads/next:refs/remotes/origin/next
fetch = +refs/heads/pu:refs/remotes/origin/pu
fetch = +refs/heads/todo:refs/remotes/origin/todo
(Such explicit whitelisting will also sacrifice automatic addition or
even notification, if desired, of future new branches too.)
There is a remote.<name>.skipDefaultUpdate variable, but it probably
isn't fine grained enough.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: fetch branch blacklist
2009-01-08 0:07 fetch branch blacklist jidanni
@ 2009-01-09 20:23 ` Jakub Narebski
2009-01-10 2:30 ` jidanni
0 siblings, 1 reply; 3+ messages in thread
From: Jakub Narebski @ 2009-01-09 20:23 UTC (permalink / raw)
To: jidanni; +Cc: git
jidanni@jidanni.org writes:
> If one wants to always fetch all except one remote branch, one cannot
> just blacklist it, but must instead whitelist all the rest.
> $ git branch -rd origin/man origin/html
> Deleted remote branch origin/man.
> Deleted remote branch origin/html.
> Plus I edited them out of FETCH_HEAD. Nonetheless, back from the dead:
> $ git pull
> From git://git.kernel.org/pub/scm/git/git
> * [new branch] html -> origin/html
> * [new branch] man -> origin/man
> The only solution is to change .git/config:
> [remote "origin"]
> url = git://git.kernel.org/pub/scm/git/git.git
> # fetch = +refs/heads/*:refs/remotes/origin/*
> fetch = +refs/heads/maint:refs/remotes/origin/maint
> fetch = +refs/heads/master:refs/remotes/origin/master
> fetch = +refs/heads/next:refs/remotes/origin/next
> fetch = +refs/heads/pu:refs/remotes/origin/pu
> fetch = +refs/heads/todo:refs/remotes/origin/todo
Well, you can always use hooks for that (see for example
underdocumented contrib/hooks/update-paranoid)... or you can try to
scratch that itch yourself. gitignore supports inverse (negated)
patterns (!<pattern>), so there is some code dealing with
"blacklisting". I would propose using the same '!' character, or
perhaps one of forbidden characters (see git-check-ref-format(1)),
i.e.
[remote "origin"]
url = git://git.kernel.org/pub/scm/git/git.git
fetch = +refs/heads/*:refs/remotes/origin/*
fetch = !refs/heads/html
fetch = !refs/heads/man
--
Jakub Narebski
Poland
ShadeHawk on #git
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2009-01-10 2:31 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-01-08 0:07 fetch branch blacklist jidanni
2009-01-09 20:23 ` Jakub Narebski
2009-01-10 2:30 ` jidanni
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).