threads / discuss / 7484

Did I miss something? git-clone doesn't grab all branches????

Subject: Did I miss something? git-clone doesn't grab all branches????

## tl;dr

4 messages between Mar 30, 2007 and Mar 31, 2007.

replies: 3people: 3as markdown or json

Timur Tabi· Mar 30, 2007, 15:57 UTC · lore
I used to be able to do this:

git-clone http://ftp.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc.git cd powerpc git-checkout for-2.6.22

But that doesn't work any more.  Why not?  It was working perfectly fine before.
So someone told me I need to do this:

git-clone http://ftp.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc.git cd powerpc git-fetch http://www.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc.git for-2.6.22:for-2.6.22 git-checkout for-2.6.22

Ok, fine, but now when I do git-pull, I get this:
[snip]
* refs/remotes/origin/merge: fast forward to branch 'merge' of 
http://ftp.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
   old..new: e0f2e3a..190a440
Warning: No merge candidate found because value of config option
          "branch.for-2.6.22.merge" does not match any remote branch fetched.
No changes.
What does the warning mean?  And why is it so difficult to clone branches now?
-- 
Timur Tabi
Linux Kernel Developer @ Freescale
Timur Tabi· Mar 30, 2007, 17:03 UTC · re: Loeliger Jon-LOELIGER · lore

Re: Did I miss something? git-clone doesn't grab all branches????

Loeliger Jon-LOELIGER wrote:
> Timur,
> 
> You missed something. :-) You didn't read the Release
> Notes for 1.5 that I forwarded. 

I didn't get that email. However, I did read the release notes for 1.5 on the web, and it didn't help. It's as if I'm on a different planet then everyone else who uses git, and so no one understands what I'm trying to do.

I hate branches.  I never use them.  I create a whole new tree for each commit that I work 
on.  So I like to have a clone of all of the main external repositories on my hard drive. 
  Then I just clone these local repos into other trees on my hard drive.

In the past, my clone of paulus/powerpc.git contained everything. Every time I did a git-pull, it would grab everything. Then I could do a local clone/checkout if I ever wanted to work on a branch (like for-2.6.22). I didn't have to know the names of the branches when I did git-clone.

Because of the changes to git-clone, this process got a whole lot more complicated. Now I need to issue multiple commands for each branch. Ugh.

 > As a start, do this:
> 
>     git branch -a
I think I figured it out, but I'm not sure it's working:

git-clone http://www.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc.git powerpc.git cd powerpc.git git-checkout origin/for-2.6.22 git-checkout -b for-2.6.22

When I do this, git-branch -l shows:
* for-2.6.22
   master
So I think I'm okay.
-- 
Timur Tabi
Linux Kernel Developer @ Freescale
Junio C Hamano· Mar 31, 2007, 01:30 UTC · re: Timur Tabi · lore

Re: Did I miss something? git-clone doesn't grab all branches????

Timur Tabi <timur@freescale.com> writes:
Show 5 quoted lines
> In the past, my clone of paulus/powerpc.git contained everything.
> Every time I did a git-pull, it would grab everything.  Then I could
> do a local clone/checkout if I ever wanted to work on a branch (like
> for-2.6.22).  I didn't have to know the names of the branches when I
> did git-clone.

If that is how you use multiple trees, I think you can make that "My central repository which is a mirror of Paulus" a bare repository clone; keep updating it with git-fetch instead as a bare repository does not have an associated working tree.

	( setup )
	$ git clone --bare git://git.kernel.org/.../ paulus-mirror.git
	( periodical mirror update from upstream )
        $ cd paulus-mirror.git && git fetch
	( forking off your play area )
	$ git clone -l -s paulus-mirror.git foobranch.git
        $ cd foobranch.git
        $ git checkout --track -b foobranch origin/foobranch
	$ hack hack
	( after mirror update )
        $ cd foobranch.git
        $ git pull ;# this pulls from your mirror

← back to recent threads