Pete Harlan <pgit@xxxxxxxxxxxx> writes: > Johan Herland wrote: > > BTW, the best way IMHO to archive old refs is to clone your repo > > (with all tags/branches) to a backup disk, and then regularly push > > (git push --all && git push --tags) your new tags/branches to this > > backup. You are now free to delete these tags/branches from your > > work repo (they will not be deleted from the backup unless you use > > "git push --mirror"). And if you ever need to retrieve an old > > tag/branch, it's just a matter of pulling it from the backup > > repo. Nice, clean, flexible, and requires no changes to git. > > Thank you; that indeed seems to work and solves the problem of managing > refs/archived-tags manually. > > Using a secondary repo solely to overcome a flat tag/branch namespace > feels hackish. Perhaps git will benefit someday from work in this area, > but until I come up with a patch your suggestion should work fine. Just > knowing I didn't overlook an existing feature helps a lot. I don't quite understand what you mean by _flat_ namespace for tags and branches. First, it is not unusual to have hierarchical branch names, at least for short-term topic branches. For example in git.git history (and in "What's cooking..." announcements on git mailing list) you can find branch names such as rs/alloc-ref, nd/narrow, tr/workflow-doc. Additionally remote-tracking branch names have inherently hierarchical names: refs/remotes/<remote>/<remote branch>. While tag names usually are of the type x.y.z, it is not mandated by some technological limitation. Second, you can always put your archived refs in another namespace, beside 'heads', 'tags', and 'remotes'. I for example use refs/tags/Attic for lightweigth tags to some interesting abandoned experiments, but it could have been refs/deleted/tags, or refs/Attic/tags. Last, please remember that there exists something like packed refs format (see git-pack-refs(1)... oops, it dies not describe .git/packed-refs format, unfortunately). -- Jakub Narebski Poland ShadeHawk on #git -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html