[Bioc-devel] GitHub and svn

Kevin RUE kevinrue67 at gmail.com
Sun Oct 16 00:41:15 CEST 2016


Dear Mani,

That's actually where I think the git-svn bridge becomes useful.
If you take the time once to synchronise the devel branch of your package
from the Bioconductor-mirror to one of the branch on your GitHub repository
(for me the master branch), you could then:
1) commit changes to your own repository first (does not affect the BioC
code)
2) follow the BioC git-svn instructions that you mentioned to selectively
push the changes to either or both the devel and release branche(s) of
Bioconductor.

I personally don't think that the current system is "unnecessarily
complicated". That handful of commands is probably as simple as a system
can be, to handle version control selectively applied to multiple branches
(devel, 3.3, 3.2, master, ...) of multiple repositories (BioC, GitHub, ...)
using multiple version control software (git, svn).

The learning curve for version control can be quite steep beyond the basic
commands, but one has to bear in mind that RStudio is not a version control
software in itself. The GUI only provides buttons for the most common
version controls commands (pull/push/update). For more advanced commands,
you will have to open a shell anyway (the little wheel icon).
I must admit that I was a bit scared/frustrated at first with the system,
but after a few attempts to get it right, this little process to control
the branches to synchronise can almost become enjoyable when proudly
releasing new code :)

All the best,
Kevin


On Sat, Oct 15, 2016 at 10:21 PM, S Manimaran <manimaran_1975 at hotmail.com>
wrote:

> Thanks, Gabe and Kasper, for the info.
>
>
>
> Following up on Gabe's reply: That means, I need to setup two projects in
> R-Studio with one for the release pointing to the release repository in SVN
> and another for the development version pointing to the development
> repository in SVN, right? Now, suppose I make a bug fix and commit to the
> release repository and I want the same fix in the development repository as
> well, how exactly do I go about this: Do I just manually copy those files
> with the changes to the other development version project and commit it
> there as well? (Personally, I also like to keep the original GitHub
> repository in sync with the latest in BioConductor development, which would
> mean I need to maintain three projects in R-Studio, right?) Or is there any
> other way about this?
>
>
>
> Thanks,
>
> Mani
>
>
>
>
> From: Gabe Becker [mailto:becker.gabe at gene.com]
> Sent: Saturday, October 15, 2016 4:35 PM
> To: Kasper Daniel Hansen
> Cc: S Manimaran; bioc-devel at r-project.org
> Subject: Re: [Bioc-devel] GitHub and svn
>
>
> Mani,
>
> Related to what Kasper said, one thing you can do is commit directly to
> the canonical repo for your package (which again is not on github once the
> package is accepted) from rstudio. It supports svn.
>
> ~G
>
> On Oct 15, 2016 11:38 AM, "Kasper Daniel Hansen" <
> kasperdanielhansen at gmail.com<mailto:kasperdanielhansen at gmail.com>> wrote:
> Not at the moment.  We are in the (long) process of changing this, but
> there is no ETA for it.
>
> The complications we currently have, as soon as a package is accepted in
> Bioconductor, is that the "true" repository then becomes Bioconductor SVN
> and your Github repository is just a way for you to develop.  This is not
> the case during package submission.
>
> Best,
> Kasper
>
>
> On Sat, Oct 15, 2016 at 12:19 PM, S Manimaran <manimaran_1975 at hotmail.com<
> mailto:manimaran_1975 at hotmail.com>>
> wrote:
>
> > Hi,
> >
> > I never understood the github mirror setup and the instructions below
> look
> > unnecessarily complicated to me. I see that the current package
> submission
> > process with the automatic hook added to github is the most easiest of
> all
> > with every commit to github automatically triggering a build at
> > Bioconductor. Now, my question is: Can't this same procedure be carried
> > over once the Bioconductor 3.4 is released as well i.e commits to github
> > automatically resulting in triggering a build at Bioconductor? The main
> use
> > case that I am looking for is an easy way to commit directly from inside
> > R-Studio. With R-Studio setup for GitHub project, it directly commits to
> > GitHub, but now for having to commit to BioConductor, if the automatic
> > trigger works well as is the case with the new package submission
> process,
> > all is well and good. But if I have to do as what the page in git-mirror
> > says, then it looks like that I have to get out of R-Studio to do some
> > overly complicated process to achieve the s!
> >  ame. It will be really helpful if I can continue to use the automatic
> > trigger to automatically build after Bioconductor 3.4 release as well.
> >
> >
> > http://bioconductor.org/developers/how-to/git-mirror/
> >
> > Scenario 2: Set Up Your Own GitHub Repository
> > If you do not already have a public git repository for package REPO the
> > simplest thing to do is navigate to https://github.com/
> > Bioconductor-mirror/REPO and click the Fork button in the upper right.
> > This will create a copy of the repository on your personal account. You
> may
> > want to re-enable issue tracking in your repository (it's disabled in the
> > read-only mirrors and forks inherit this setting). To do this, go to
> > Settings and then click the Issues checkbox. Then perform the following
> > steps in your terminal.
> >
> >   1.  git clone https://github.com/USER/REPO to clone the repository to
> > your machine.
> >   2.  cd REPO to switch to the REPO directory.
> >   3.  bash /path/to/update_remotes.sh to setup the git remotes.
> >   4.  Commit to git and push to GitHub as you normally would.
> >   5.  Each time you want to push git commits to svn:
> >      *   git checkout devel to switch to the devel branch. (use
> > release-X.X for release branches)
> >      *   git svn rebase to get the latest SVN changes.
> >      *   git merge master --log to merge your changes from the master
> > branch or skip this step and work directly on the current branch.
> >      *   git svn dcommit --add-author-from to sync and commit your
> changes
> > to svn. You may be prompted here for your SVN username and password.
> > When you're done, be sure and merge any changes from svn back into the
> git
> > master branch:
> > git checkout master
> > git merge devel
> >
> > Thanks,
> > Mani
> >
>
>
>
>         [[alternative HTML version deleted]]
>
> _______________________________________________
> Bioc-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>

	[[alternative HTML version deleted]]



More information about the Bioc-devel mailing list