On Fri, Dec 18, 2009 at 11:25:54AM -0500, Eugene Sajine wrote: > i have a repo cloned from the server with two branches master and qa. > > $git remote show origin > > tells me that the HEAD branch is master. > > When i try to execute > > $ git remote set-head origin qa > > It prints nothing and "git remote show origin" still prints that HEAD > branch is master. > > Could you, please, advise if I am i missing something. Hmm. It probably worked, but what you are being shown is a bit confusing. "git remote show" will actually query the remote server to find where its HEAD is pointing. But "git remote set-head" is about changing your _local_ idea of where the remote head is pointing (in general, "git remote" does not change anything on the remote side. It is about managing the local configuration of your remotes). AFAICT, there is no way to use "git remote" to query the result of your set-head. And the "show" output makes no distinction between the two. Perhaps we should print both in "git remote show" if they differ. Something like: HEAD branch: qa (remote points to "master") or HEAD branch (local): qa HEAD branch (remote): master That would clear up the confusion of what is happening. Whether that is what you actually wanted, I don't know. If you want to be able to refer to "origin/qa" as "origin", then you're fine. But if you wanted to actually change the remote repository's idea of HEAD so that further clones will clone "qa" by default, then you can't do that with "git remote". You would have to go to the remote repository and run "git symbolic-ref", I think. -Peff -- 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