Re: Multiple checkouts active for the same repository

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

 



Hello,

Thanks! I've given git-new-workdir a try and it seems to be what I was
searching for.

 - Gustavo.

On 24/09/10 16:33, Julian Phillips wrote:
> On Fri, 24 Sep 2010 10:29:47 +0100, Gustavo Narea
> <gnarea@xxxxxxxxxxxxxxxxxxxxxxxx> wrote:
>> Hello.
>>
>> We're currently migrating from another DVCS, which allows us to have
>> working copies of each branch in separate directories, so that their
>> code can be used simultaneously. However, I haven't found a way to do
>> this with Git, at least not an easy way. Can you please help me?
> 
> The git-new-workdir script to be found in contrib/workdir allows multiple
> working copies to share the same repository - though there are some
> caveats:
> 
>  1) uses symbolic links, so doesn't work on Windows
>  2) the working copies are not aware of each other, so if you change a
> checked out branch from another working copy you have to remember to git
> reset your working copy before doing anything with it to get it back in
> sync with the branch
>  3) you have to remember not to delete the actual clone
>  4) the working copies are not aware of each other, so it is possible for
> objects needed by one working copy to get pruned from another one
> 
> Personally, I use this script all the time to checkout multiple branches
> at the same time taking care to stay away from the issues above, and
> everything hums along nicely.
> 
>> We are a team of Web developers and testers working on an application.
>> There are always a few development branches and a stable branch, and
>> testers need all the branches with the very latest code available at all
>> times.
>>
>> The way we handle it at the moment is very simple because the server
>> hosting the remote repository is the same that hosts the deployed
>> instances of each branch, so when we push to the remote repository, the
>> code for each site is automatically updated.
>>
>> We use the following structure:
>> /srv/repositories/project/branch1
>> /srv/repositories/project/branch2
>> /srv/repositories/project/branch3
>>
>> Is there any simple way to do this with Git? I can only think of two
>> options that involve hooks:
>>
>>     * Have a hook that exports each branch to a directory like
>>       /srv/repositories/project/branchN
>>     * Have one Git repository per branch, so that each repository have a
>>       different checkout active. Then the main remote repository will
>>       have post-receive hooks that trigger a pull on each individual
>>
>> I'm not particularly happy with either way. Is there a better solution?
> 


-- 
Gustavo Narea.
Software Developer.
2degrees, Ltd. <http://dev.2degreesnetwork.com/>.
--
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]