Re: Handling tags/branches after git-svn fetch during SVN to Git conversion

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Jul 8, 2010 at 20:18, Bradley Wagner
<bradley.wagner@xxxxxxxxxxxxxx> wrote:
> Thanks. Yea I was just looking at the man page trying to find the
> notation with the colon separated ref names.
>
> Is ":refs/heads/branch-foo" equivalent to just saying ":branch-foo" in
> the remote Git repo? Do I need the refs/heads piece?
>

That really depends on whether or not branch-foo already exists or
not.  From what I remember, if you use the <local>:<remote> syntax,
then you need the refs/heads bit if the branch doesn't already exist.

> I'm trying to understand what a usual "git push origin branch-foo"
> equates to using your syntax.
>

It's equivalent to:
  git push origin refs/heads/branch-foo:refs/heads/branch-foo
  git push origin branch-foo:refs/heads/branch-foo
  # If branch-foo already exists on the remote end, it's also the same as:
  git push origin refs/heads/branch-foo:branch-foo
  git push origin branch-foo:branch-foo

> On Thu, Jul 8, 2010 at 11:09 PM, Jacob Helwig <jacob.helwig@xxxxxxxxx> wrote:
>> remote2 would be the name of your remote repo, yes.
>>
>> origin/branch-foo would be equivalent to svn/branch-foo in your local
>> repo, if you did "git branch -a".  It should be the name of one of the
>> git-svn created branches.
>>
>> refs/heads/branch-foo is telling git where to store the reference for
>> the branch within remote2.  It does not need to exist already, and
>> should not in your case.
>>
>> The git-push man page has more in-depth explanations, if you're interested.
>>
>> On Thu, Jul 8, 2010 at 20:01, Bradley Wagner
>> <bradley.wagner@xxxxxxxxxxxxxx> wrote:
>>> In your example, does "remote2" represent the name of my remote Git
>>> repo? What is "origin/branch-foo" and does the path
>>> "refs/heads/branch-foo" need to actually exist in my .git directory?
>>>
>>> On Thu, Jul 8, 2010 at 10:54 PM, Jacob Helwig <jacob.helwig@xxxxxxxxx> wrote:
>>>> On Wed, Jul 7, 2010 at 06:36, Bradley Wagner
>>>> <bradley.wagner@xxxxxxxxxxxxxx> wrote:
>>>>> Do I need to convert these remote tags/branches into local Git
>>>>> tags/branches before pushing them to my remote Git repo or is there a
>>>>> way to push remote branches directly to my remote Git repo?
>>>>>
>>>>
>>>> You don't need to "convert" the branches to local ones.  git-push will
>>>> accept any ref your local repo knows about when you do a push.  For
>>>> example "git push remote2 origin/branch-foo:refs/heads/branch-foo"
>>>> works just fine, even if you don't have a "local" branch called
>>>> "branch-foo", and it will push the branch-foo branch out to the
>>>> remote2 remote repository.
>>>>
>>>> The tags, you'll need to convert to _actual_ tags, instead of just
>>>> branches under a tags/ namespace.  Unless you're fine with them
>>>> staying as pseudo-tags, then you can just push them out as you would
>>>> any other branch.
>>>>
>>>> -Jacob
>
--
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


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]