git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Avi Kivity <avi@redhat.com>
To: git@vger.kernel.org
Subject: Feature request: separate namespace for remote tags
Date: Mon, 22 Feb 2010 14:44:56 +0200	[thread overview]
Message-ID: <4B827C48.9060601@redhat.com> (raw)

Currently, 'git remote add foo ...' will allocate a separate namespace 
for foo branches (refs/remotes/foo/*) but will store foo tags in the 
main tag namespace (refs/tags/*).  This leads to several problems:

- the main tag namespace becomes polluted with zillions of tags
- if the tags from a remote conflict with a local (or perhaps another 
remote) tag, information is lost
- 'git remote rm' will not delete the remote tags, and so 'git gc' will 
not recover much of the space used by the remote

A workaround is to use tagopt = --no-tags and a separate fetch line in 
the remote configuration, but that is clumsy and error prone (a common 
error being to remember doing that only after the first fetch).  I'd 
like to request that remote tags be placed into a separate namespace 
(refs/remote-tags/foo/*?) that can be managed by 'git remote' subcommands.

My suggestion is:

- 'git clone' and subsequent fetches would continue to place tags in the 
global namespace (unless overridden by a switch)
- 'git remote add', if a switch of config flag is present, will place 
tags in a remote namespace; after a while the config flag can default to 
true
- 'git describe' will prefer local tags to remote tags
- the various commands which look at tags will be enhanced to consider 
remote tag namespaces
- possibly ignore remote tags which have the same name and value as 
existing local tags (so we don't have identical v1.7.0 and foo/v1.7.0)

Thoughts?

-- 
error compiling committee.c: too many arguments to function

             reply	other threads:[~2010-02-22 12:45 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-02-22 12:44 Avi Kivity [this message]
2010-02-22 18:22 ` Feature request: separate namespace for remote tags Avery Pennarun
2010-02-22 18:35   ` Avi Kivity

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4B827C48.9060601@redhat.com \
    --to=avi@redhat.com \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).