Re: Adding default remotes to a bare repository

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

 



On 2/10/2011 3:24 PM, Francis Moreau wrote:
On Thu, Feb 10, 2011 at 8:08 PM, Neal Kreitzinger
<nkreitzinger@xxxxxxxxx>  wrote:
You could write a script that does the clone and then adds the remotes.  We
have a "menu" written in bash scripts and it does the clones and adds the
default remotes automatically.  So instead of just doing "git clone", people
would run that script to do the clone and add the remotes.

Sure.

But I'm wondering why cloning operation can't import the remote
branches of the cloned repository.

Actually I'm wondering the same thing for hooks. If a repository setup
some hooks, can't these hooks be installed by default in the new
repositories ?

you can do some hook setup automation using git templates. see the --template option of git-clone manpage and 'template directory' section of git-init manpage. There is some big reason why they don't let you inherit hooks from the origin repo of the clone repo. I think its basically because you could have security risks or compromise git integrity/workflow with hook inheritance. If you look in the newsgroup people have talked about this alot before.

As far as your request for automatic remotes, a flaw in your logic may be that you think the functionality you want would let you clone from an already-setup clone (1) which points to remote (a) then the new clone (2) would point to the remote (a) of clone(1). Not so. When you make a clone it does get an automatic remote to the repo it was cloned from. This is called 'origin' remote. Therefore, clone(2) has an origin remote to clone (1). Your idea on automatic remote setup is in direct conflict with the way git currently does automatic origin remote setup. You can't do both because that would turn in to a real mess pretty quickly. Perhaps what you want is just "cp -r", ie. "cp -r clone-1 clone-2". then the clone-2 repo will have all the remotes and hooks of clone-1 and point to the same origin remote (a), but will live in a directory/working-tree called "clone-2". "cp -r" will give you an exact duplicate thats totally functional, but occupying a different namespace.

hope this helps.

v/r,
neal

v/r,
neal
--
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]