It might be possible (in "Gerrited" setups) to have local branches
outside refs/heads/, like for example in following fetch config:

[remote "origin"]
        url = ssh://u...@example.com/my-project
        fetch = +refs/heads/*:refs/remotes/origin/*
        fetch = +refs/wip/*:refs/remotes/origin-wip/*

Let's say that 'test' branch already exist in origin/refs/wip/. If I
call:

git checkout test

then it will create a new branch and add an entry to .git/config:

[branch "test"]
        remote = origin
        merge = refs/wip/test

But if I create a branch 'test2' and call:

git push --set-upstream origin test2:refs/wip/test2

then branch is pushed, but no entry in .git config is created. I have
to do it manually. I attached a hack-patch to have it working just to
check with you if anything like that would be accepted. Obviously the
get_local_refs() would need to compute the actual list of local
hierarchies (if it is possible at all). And it probably should get a
better name. And probably something else.

What do you think?

Krzesimir Nowak (1):
  RFC: make --set-upstream work for branches not in refs/heads/

 transport.c | 41 ++++++++++++++++++++++++++++++++++-------
 1 file changed, 34 insertions(+), 7 deletions(-)

-- 
1.8.3.1

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to