threads / discuss / 23775

Ignoring remote branches.

Subject: Ignoring remote branches.

## tl;dr

2 messages between May 11, 2010 and May 12, 2010.

replies: 1people: 2as markdown or json

Steven Michalske· May 11, 2010, 07:40 UTC · lore
Howdy,

I would like to know a way to exclude fetching stacked git branches from repositories.

But I want to track new branches, so specifying the branches I want to fetch is tedious.

Any workarounds to ignore all branches that match *.stgit
Steve
Jonathan Nieder· May 12, 2010, 10:25 UTC · re: Steven Michalske · lore

Re: Ignoring remote branches.

Hi Steven,
Steven Michalske wrote:
> I want to track new branches, so specifying the branches I want
> to fetch is tedious.
> 
> Any workarounds to ignore all branches that match *.stgit

I would suggest using ‘git ls-remote’ and ‘git fetch’ to grab just the branches you want.

  #!/bin/sh
  set -e
  : ${remote=origin}
  : ${options=--dry-run}
  script='!/\.stgit$/ s'
  script="${script}#.*\\trefs/heads/\\(.*\\)\$"
  script="${script}#git fetch $options $remote "
  script="${script} refs/heads/\\1:refs/remotes/$remote/\\1"
  script="${script}#p"
  eval "$(git ls-remote "$remote" | sed -n "$script")"

I am not sure how to generalize this: a pre-fetch hook that can reject some branch names? a fetchregexp configuration item?

 [remote "origin"]
	url = git://git.example.com/repo.git/
	fetchregexp = "refs/heads/\([^.]*\):refs/remotes/origin/\1"
Maybe we can solve some similar problems at the same time.

Thanks, Jonathan

← back to recent threads