[Bioc-devel] Git Transition Plan

Nathan Sheffield nsheff at virginia.edu
Tue May 30 23:16:14 CEST 2017

Hi Nitesh and all,

Can you give any status update on the SVN-to-git transition? I haven't 
seen any news since this exchange in March -- is the announced public 
beta in progress or ongoing? Are new package submissions going straight 
into git at this point?

Or did I miss something?



On 04/01/2017 09:14 AM, Martin Morgan wrote:
> On 03/29/2017 03:55 PM, Henrik Bengtsson wrote:
>> Thanks.  I have a few thoughts and questions in order to plan ahead:
>>> - Our plan is to make a 'clean' transition from SVN to git, 
>>> approximately one month after the next Bioconductor release. 
>>> Developers or users will not have access to the SVN system after the 
>>> date of transition.
>> In order to preserve commit authorship, what's your plan for mapping
>> SVN username to Git 'user.email' and 'user.name'?  The 'user.email' is
>> what GitHub uses to associate commits and contributions to GitHub
>> accounts.
> The svn administrators kept a comprehensive (but not complete) record 
> of svn id, real user name, and contact email at the time the svn id 
> was create. We use this to map between svn commits and git user name 
> and email address.
> The information is not entirely consistent, with some fields for some 
> records 'missing' (e.g., my record doesn't contain my real name) and 
> of course out of date (e.g., my email address).
> Our intention is NOT to re-write history, but to map the information 
> that we have to the git repositories. So my svn commits appear without 
> a proper name, and with an outdated email address. Of course, new 
> commits after the transition will contain whatever info git provides.
>> BTW, using obsolete email addresses may prevent people from being
>> associated with those email addresses on GitHub and other online
>> services that require authentication of authorship claims (which go
>> out via those email addresses).
>> When I SVN-to-Git exported my Bioconductor packages a few years ago, I
>> could handle manually because there were not too many contributors in
>> the SVN logs and I reached out to each of them and asked what email
>> addresses they would prefer to have in the Git commits.  That approach
>> is obviously not feasible to automate for all Bioconductor packages.
>> Maybe this can be handled optionally by each package maintainers by
>> adding a .gitauthors file to the package root (or possibly via a
>> global Bioc one that everyone can commit to), e.g.
>> ```r
>> hb = Henrik Bengtsson <henrikb at braju.com>
>> joe at foo.com = John Doe <jd at someone.org>
>> ```
>> and then Bioc can use this mapping when exporting to Git?
>> Finally, will people like me who already done the SVN-to-Git migration
>> be able to use that instead of the Bioc generated one? (I assume not,
>> but worth asking)
> No, we'll make a git snapshots of svn at the time of transition, and 
> these git repositories will be the cannonical version -- developers 
> will need to sync with these as they see fit.
> Martin
>> Thanks,
>> Henrik
>> On Wed, Mar 29, 2017 at 9:51 AM, Turaga, Nitesh
>> <Nitesh.Turaga at roswellpark.org> wrote:
>>> Dear Bioconductor Developers,
>>> More news about the Git transition plan. We are coming close to our 
>>> transition date and have made significant progress in getting our 
>>> new server ready for the Bioconductor community.
>>> 1. Overall plan:
>>> - Bioconductor hosts each package as a distinct repository at 
>>> git.bioconductor.org<http://git.bioconductor.org/>. From 
>>> Bioconductor's perspective, this is the canonical location. Nightly 
>>> builds will be based on these repositories, release branches will be 
>>> created in these repositories, etc. The naming convention for 
>>> branches remains the same.
>>> - Developers clone or otherwise sync their code base to these 
>>> repositories. Each developer will be able to push to and pull from 
>>> (e.g., during branching and version bumps at package release) their 
>>> git.bioconductor.org<http://git.bioconductor.org/> repository. 
>>> Version bumps and new branches(during Bioconductor release) will be 
>>> handled by the core team.
>>> - Developers are encouraged to host and develop their source code on 
>>> Github or other git-based social platforms. This promotes community 
>>> involvement, and empowers developers to adopt best practices related 
>>> to issue tracking, continuous integration, bug fixes, pull requests 
>>> from their community, etc.
>>> - All bioconductor infrastructure code will also be available on 
>>> Github, through our organization 
>>> page(https://github.com/Bioconductor). Community members are 
>>> encouraged to send us pull requests for all our public repositories.
>>> 2. Timing:
>>> - Our plan is to make a 'clean' transition from SVN to git, 
>>> approximately one month after the next Bioconductor release. 
>>> Developers or users will not have access to the SVN system after the 
>>> date of transition.
>>> 3. Repositories:
>>> - The git repositories will be derived from a 'snapshot' of the 
>>> latest SVN repository at the time of the transition. After the date 
>>> of transition, further commits to SVN will not be reflected in the 
>>> new git repositories.
>>> - Each repository will capture the full SVN commit history of the 
>>> package. Releases will be included as branches in the repository.
>>> - We anticipate that software and experiment data packages will be 
>>> hosted at git.bioconductor.org<http://git.bioconductor.org/>. 
>>> Experiment data packages will use git-lfs to manage large data.
>>> - The Github Bioconductor-mirror repository will be removed.
>>> 4. Test phases:
>>> - We anticipate two test periods.
>>> - A private 'alpha' test phase is starting shortly. Alpha testers 
>>> will initially have pull access to their repository, and will follow 
>>> tentative work flows for gaining push access, for maintaining clones 
>>> of their packages, for committing to the 
>>> git.bioconductor.org<http://git.bioconductor.org/> repositories, and 
>>> for pulling from (e.g., version bumps and release branches) the 
>>> repositories.
>>> - A public 'beta' test phase will start after the next Bioconductor 
>>> release, and last for approximately four weeks. Beta testers will 
>>> have pull access to all Bioconductor package repositories, and push 
>>> access to packages that they maintain. Commits will be visible, but 
>>> NOT synced with SVN or incorporated into nightly builds.
>>> - An essential activity during test periods is to verify that the 
>>> SVN commit history has been captured in the git repositories. This 
>>> will be available in your git log.
>>> 5. Resources:
>>> - We will be developing resources to help developers in the transition.
>>> - As an addition to the resources, we also recommend the excellent 
>>> tutorials provided at 
>>> gittutorial<https://git-scm.com/docs/gittutorial>, 
>>> try.github.io<https://try.github.io/>.
>>> Best,
>>> Nitesh Turaga
>>> Bioconductor Core Team
>>> This email message may contain legally privileged and/or 
>>> confidential information.  If you are not the intended recipient(s), 
>>> or the employee or agent responsible for the delivery of this 
>>> message to the intended recipient(s), you are hereby notified that 
>>> any disclosure, copying, distribution, or use of this email message 
>>> is prohibited.  If you have received this message in error, please 
>>> notify the sender immediately by e-mail and delete this email 
>>> message from your computer. Thank you.
>>>         [[alternative HTML version deleted]]
>>> _______________________________________________
>>> Bioc-devel at r-project.org mailing list
>>> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>> _______________________________________________
>> Bioc-devel at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/bioc-devel
> This email message may contain legally privileged and/or...{{dropped:2}}
> _______________________________________________
> Bioc-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/bioc-devel

More information about the Bioc-devel mailing list