Back

Explore Courses Blog Tutorials Interview Questions
0 votes
2 views
in DevOps and Agile by (19.7k points)

I currently have a git remote setup like the following:

[remote "upstream"]

    url = <redacted>

    fetch = +refs/heads/*:refs/remotes/upstream/*

When I issue git pull on branch master, all remote heads are fetched into remotes/upstream, then remotes/upstream/master is merged into master. Any tags that can be reached are also fetched at the same time, which is very convenient.

I'd like git pull to additionally fetch all tags from the remote, not just those that are directly reachable from the heads. I originally tried setting tagopt == --tags but found this caused only tags to be fetched and thus broke everything. (Junio even says that's a horrendous misconfiguration).

Is there a way to make git pull fetch all remote tags by default, in addition to the remote heads?

1 Answer

0 votes
by (62.9k points)

You should be able to accomplish this by adding a refspec for tags to your local config. Use the below code:

[remote "upstream"] 

url = <redacted> 

fetch = +refs/heads/*:refs/remotes/upstream/* 

fetch = +refs/tags/*:refs/tags/*

 

Browse Categories

...