[Live-demo] [live-demo] Migration to git

Cameron Shorter cameron.shorter at gmail.com
Wed Apr 22 15:59:30 PDT 2015


If we plan to migrate to git, I suggest we should do this over the next 
few weeks, before our official OSGeo-Live 9.0 kickoff which should be 17 
May according to our schedule:

https://docs.google.com/spreadsheet/ccc?key=0Al9zh8DjmU_RdE1SYUN3YWJ2N1NpSUczbW9IRWZNclE&hl=en_GB#gid=0

I'm thinking we need to:
* Set up our main git repository and whatever is involved there
* Update our wiki pages to change all references of using svn to git
* Update any of our scripts which make use of svn to switch to git.
* Annouce

On 23/04/2015 8:47 am, Angelos Tzotsos wrote:
> Hi,
>
> Thanks Alex for bringing the git migration topic up again.
> Our git-svn mirror (https://github.com/OSGeo/OSGeoLive) has been 
> working very well for the last couple of months.
> As mentioned in my previous e-mail, I have managed to split a doc git 
> repository (with history).
> The question is when do we "officially" switch.
> Are there any news on OSGeo git hosting options?
>
> Best,
> Angelos
>
> On 04/22/2015 06:27 PM, Alex Mandel wrote:
>>
>> Perhaps this is time to check in on the plan to migrate the docs to git,
>> as that would better enable additional contributors.
>
> On 01/31/2015 08:09 PM, Angelos Tzotsos wrote:
>> Hi all,
>>
>> We have been discussing this for a couple of years and I think it is 
>> time to seriously start considering a strategy for migrating to Git 
>> as our source control system [1].
>> If someone is unfamiliar with Git, there are great resources online 
>> pointing to why we should use Git instead of svn [2] [3] [4].
>>
>> Git is a free and open source distributed revision 
>> control<http://en.wikipedia.org/wiki/Distributed_revision_control> 
>> system with an emphasis on speed, data 
>> integrity,^<http://en.wikipedia.org/wiki/Git_%28software%29#cite_note-integrity_goals-7> 
>> and support for distributed, non-linear 
>> workflows.^<http://en.wikipedia.org/wiki/Git_%28software%29#cite_note-linusGoogleTalk-8> 
>> Git was initially designed and developed by Linus Torvalds for Linux 
>> kernel<http://en.wikipedia.org/wiki/Linux_kernel> development in 
>> 2005, and has since become the most widely adopted version control 
>> system for open source software 
>> development.<http://en.wikipedia.org/wiki/Git_%28software%29#cite_note-ianskerrett.wordpress.com-9>
>>
>> Many people tend to confuse Git with GitHub [5] which is an excellent 
>> code collaboration service (most open source projects use it today, 
>> even Linux kernel keeps a code mirror there) but it is not available 
>> under an open source license.
>>
>> This is not a problem for us. Git is a distributed source control 
>> system, which means that there is no need for a centralized server as 
>> in subversion. Every developer has a copy of the whole repository 
>> (including history). In order to keep our Subversion-style workflow 
>> (store commits to a reference repository), we can use something like 
>> GitLab [6] or something even simpler [7] on an OSGeo server to host 
>> git repositories. Also, there is an OSGeo GitHub account [8] that we 
>> could use as a mirror too...
>>
>> Regarding the actual port, I propose that we should do this smoothly:
>>
>> 1. Create an OSGeoLive-docs repository (with full svn history)
>> 2. Start building our docs as a deb package based on Git repository. 
>> The Git repository can be synchronized with our svn for a while until 
>> we abandon svn.
>> 3. Migrate our translation process to Git or even use excellent 
>> translation tools like Transifex [9] (GeoServer and other projects 
>> already use it for translations) [10]
>> 4. Create an OSGeoLive repository (with svn history, without docs)
>> 5. Migrate our iso build scripts to use the Git repositories (with 
>> branch and tag support)
>> 6. Keep Git and svn synchronized for a while until we abandon svn
>>
>> I have already done some work for step 1:
>> There is an Git-svn mirror of our docs available here [11].
>> In order to be able to accurately hold a git history, we need to 
>> provide a name and e-mail for every contributor.
>> This is why I have committed this transformation file [12] that I use 
>> to rebuild the history on the Git side, so that we can have the 
>> complete history of commits [13] (for now I just committed my own 
>> details as an example here [14]).
>>
>> I would like to ask everyone to add their name and e-mail (that they 
>> already use on their Git projects). We could extract this information 
>> from our contributors.csv file for you if you don't want to provide 
>> this info again.
>>
>> Regarding our ticket system, there is a Trac plugin for Git available 
>> that we could use [15].
>> Resources for the migration can be found here: [16] [17] [18]
>>
>> Sorry for the long e-mail.
>> Lets have a discussion here before we vote.
>>
>> This proposal is for AFTER we release 8.5 final ;)
>>
>> Best,
>> Angelos
>>
>> [1] http://git-scm.com/
>> [2] http://git-scm.com/about/
>> [3] https://www.youtube.com/watch?v=4XpnKHJAok8
>> [4] http://git-scm.com/book/en/v2
>> [5] https://github.com
>> [6] https://about.gitlab.com/
>> [7] https://git.kernel.org/cgit/
>> [8] https://github.com/OSGeo
>> [9] https://www.transifex.com/
>> [10] https://www.transifex.com/projects/p/geoserver/
>> [11] https://github.com/kalxas/OSGeoLive-docs
>> [12] 
>> http://trac.osgeo.org/osgeo/browser/livedvd/gisvm/trunk/doc/contributors-transform-git.txt
>> [13] https://github.com/kalxas/OSGeoLive-docs/graphs/contributors
>> [14] http://trac.osgeo.org/osgeo/changeset/12235
>> [15] http://trac.edgewall.org/wiki/TracGit
>> [16] 
>> http://git-scm.com/book/en/v1/Git-and-Other-Systems-Git-and-Subversion
>> [17] 
>> http://stackoverflow.com/questions/79165/migrate-svn-repository-with-history-to-a-new-git-repository
>> [18] http://john.albin.net/git/convert-subversion-to-git
>>
>
>

-- 
Cameron Shorter,
Software and Data Solutions Manager
LISAsoft
Suite 112, Jones Bay Wharf,
26 - 32 Pirrama Rd, Pyrmont NSW 2009

P +61 2 9009 5000,  W www.lisasoft.com,  F +61 2 9009 5099




More information about the Osgeolive mailing list