git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Branch Names and tracking branches

From
Troy Telford <ttelford.groups@gmail.com>
Date
May 26, 2010, 20:39 UTC
Message-ID
<201005261439.17442.ttelford.groups@gmail.com>

I've got a situation where I'm trying to integrate git into another tool, so that when you make a commit into a git branch, a post-receive hook will then push the code changes into the other tool when the user pushes their changes into the repository.

The problem: The other tool uses colons in the name. So, I looked at 'man git-check-ref-format', and found that the colon can't be used.

So, I looked for a substitute character that isn't likely to be used anyway -- semicolon seemed to be a good choice.

As I decided to use a semicolon, a conversion as needed in the post hook. It works fine with the git branch names along the lines of sna;foo;bar.

But using a branch name of "sna;foo;bar" is not entirely great, as the semicolon has to be escaped on the command line when referencing the branch name.

So, I decided to use a tracking branch:
 git branch --track branch "refs/origin/sna;foo;bar"

Again, it checks out okay, and it is able to pull in changes fine. However, changes can't be pushed into the remote repository at all; 'git push' simply returns "Everything up-to-date," even when changes are made.

This differs from the behavior I've seen in the past for tracking branches - I'm used to (and was expecting) the git push to push the changes into the remote's "refs/heads/sna;foo;bar" branch.

Using another character is, of course, an option; but the semicolon isn't explicitly forbidden and it works for everything I've used but 'git push'.

So am I just doing something wrong, or have I found a bug or documentation issue?

Next: Troy Telford
Message 1 of 2 in “Branch Names and tracking branches”
  1. Troy TelfordMay 26, 2010
  2. Troy TelfordMay 26, 2010

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.