# Branch Names and tracking branches

2 messages from 2010-05-26 to 2010-05-26. Participants: Troy Telford.
Thread: https://gitlist.dev/t/23917

## Troy Telford, 2010-05-26 20:39

Subject: Branch Names and tracking branches
Message-ID: <201005261439.17442.ttelford.groups@gmail.com>
URL: https://gitlist.dev/e/201005261439.17442.ttelford.groups%40gmail.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?

```

## Troy Telford, 2010-05-26 20:54

Subject: Re: Branch Names and tracking branches
Message-ID: <201005261454.15277.ttelford.groups@gmail.com>
URL: https://gitlist.dev/e/201005261454.15277.ttelford.groups%40gmail.com
In-Reply-To: <201005261439.17442.ttelford.groups@gmail.com>

```
I just realized it's a config issue.  <sigh>

git config push.default tracking

Sorry for that...

On Wednesday, May 26, 2010 02:39:17 pm Troy Telford wrote:
> 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?

```
