"Martin Langhoff" <martin.langhoff@xxxxxxxxx> writes: > There are 2 things that I see as wrong... > - local .git/refs/remote/origin/foo and refs/heads/foo match - why is > git-push talking about updating them? Ooo... Do you mean if you have refs/remotes/origin/foo locally, and push into a repository that has refs/heads/foo (but not refs/remotes/origin/foo), the push results in refs/heads/foo getting updated? If that is what is happening (without any refspecs to instruct git-push to do so) that sounds quite buggy. I need to look into the code for this one. And I think earlier one I was confused that I thought you were talking about pushing into refs/heads/branch (where branch is checked out). Sorry. > - matching refs should ignore .git/refs/remote > > ... the 'matching refs' thing will > ignore the local .git/refs/remotes directory. AFAICS it's the only > sane thing to do. I think you are probably right in that matching only heads and perhaps tags is a sane thing to do (even tags/ is debatable, as they are supposed to be immutable by convention). As a matter of fact I do not recall which part of refs/ namespace it looks at, but it is a very old part of the system and I would not be surprised if it silently assumed that there are only heads and tags there (and not explicitly matching heads and tags only). - 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