[gdal-dev] sandbox access for non-commiters

Antonio Valentino antonio.valentino at tiscali.it
Sat Oct 8 05:14:17 EDT 2011


Hi Mateusz,

Il 07/10/2011 22:36, Mateusz Loskot ha scritto:
> On 06/10/11 22:27, Antonio Valentino wrote:
>> Il 06/10/2011 23:03, Mateusz Loskot ha scritto:
>>> On 06/10/11 21:52, Antonio Valentino wrote:
>>>>
>>>> The weak point in the workflow is the initial cloning of the svn repo.
>>>
>>> Indeed, because every developer aiming in the git svn workflow
>>> has to do this initial step on his own. AFAIK, there is no way to
>>> centralise it.
>>
>> I'm wondering if there is some way to use a svn dump for the initial
>> setup of the git repo.
>> The svn dump could be downloaded (in compressed form) via FTP in a way
>> that is by far faster than the initial git svn fetch
> 
> I have no idea if it is possible.
> 

Mmh, after a quick test it seems to be not possible.

>> Another option is to make available a pre-loaded git repo in compressed
>> form.
>> Developers that want to use git should download and uncompress the
>> pre-loaded repo and re-sync using git-svn for getting last svn commits.
> 
> It should be possible.
> 
> Here is package of GDAL repo I maintain using "git svn" to
> synchronise the Git mirror of GDAL at GitHub:
> 
> http://mateusz.loskot.net/tmp/gdal/mloskot-github-gdal-20111007.7z
> 
> You should be able to download, unpack, fetch update since the creation
> of the package and use it.
> 
> Note, the repo is created/managed on Windows, so it's configured
> to use CRLF. If you download/use it on Unix, you will have to do:
> 
> $ git config core.autocrlf true
> 
> otherwise, Git will report all files as changed, thus  "needs update".
> 
> Summary
> 
> unpack mloskot-github-gdal-20111007.7z
> $ cd mloskot-github-gdal-20111007
> $ git config core.autocrlf true
> $ git svn --authors-file=../gdal-git-authors.txt rebase
> 
> At this point, the Git repo is up to date with the upstream in SVN trunk.
> 
> Now, you may want to push it to your remote Git repo at GitHub

Just for the record, IMHO this final step is not strictly needed.
Githubbers can simply *fork* the reference repo (yours) using the web
interface.
Since from now on we are in the git part of the workflow,
publishing/sharing a branch in whatever remote repo is just a matter of

$ git push <repository> <branchename>

This allow to skip the time expensive operation of pushing the entire
gdal repo to github.

> So, either do:
> 
> git push [protocol]://[login]@github.com/mloskot/gdal.git
> 
> or add aliased remote [1]:
> 
> git remote add [alias] [protocol]://[login]@github.com/denisarnaud/soci.git
> 
> where [alias] is short name of your Git remote,
> [protocol] is either git or https and [login] is your account at GitHub.
> Now, you can push your mirror of GDAL trunk to remote Git repo:
> 
> $ git push [alias]
> 
> Note, in the mloskot-github-gdal-20111007.7z file I left my update.bat
> script. This is the script I use to quickly pull changes from GDAL SVN
> trunk and push it to Git at github. Obviously, don't use this script
> trying to push to my repo.
> 
> [1] http://gitref.org/remotes/
> 
> Best regards,

Thank yo very much Mateusz, it worked perfectly.

regards

-- 
Antonio Valentino


More information about the gdal-dev mailing list