[Bioc-devel] git svn dcommit

Martin Morgan martin.morgan at roswellpark.org
Thu Jun 23 10:49:10 CEST 2016


On 06/23/2016 03:31 AM, Steffen Neumann wrote:
> Hi,
>
> are there any discussions to support github
> as first class citizen source repository for github ?
>
> I remember that some projects have a setup
> where pull-requests to the main repository
> are accepted automatically if they can be merged
> cleanly. As improvement over the normal SVN workflow,
> the pull request could trigger a single package build,
> and be accepted only if that build passes without error.
>
> I also experience the pain Kasper described in packages
> I am involved in, and feel that this is an unnecessary burden.

Yes we do plan to support git repositories in a 'native' way, but 
obviously we are not there yet. Certainly our previous attempts at 
supporting git can put a lot of burden on those wishing to use it. It's 
clear that combining git and svn require 'expert' understanding of both 
version control systems, as well as deep understanding of the 
Bioconductor project development and build model.

The idea of build-on-commit is not in the immediate future; partly 
commits influence reverse dependencies and a successful build would 
involve building all of those; this becomes very expensive. Conversely 
some form of nightly build seem necessary anyway, to account for changes 
in packages outside Bioconductor control.

Martin Morgan

>
> Yours,
> Steffen
>
> On Mi, 2016-06-22 at 22:46 -0400, Kasper Daniel Hansen wrote:
>> That's crazy.  Not so much that I have to do it once, but that I
>> apparently
>> will have to do this going forward forever.  I can vaguely understand
>> that
>> this is caused by the incompatibility between a linear only history
>> and a
>> branching history.
>>
>> It also doesn't seem to work; when I try to cherry pick commits I get
>> stuff
>> like
>>
>> $ git cherry-pick 94ef58b7ff5e24a9f36844f084ea3cebc89e846b
>> error: Commit 94ef58b7ff5e24a9f36844f084ea3cebc89e846b is a merge but
>> no -m
>> option was given.
>> fatal: cherry-pick failed
>>
>> One workable, but unsatisfactory, solution is to just checkout the
>> master
>> branch onto the devel branch and then commit.  This will make svn
>> loose my
>> commit history, but at this points its not clear that it is worth the
>> time
>> to get my commit history into svn.
>>
>> Best,
>> Kasper
>>
>> On Wed, Jun 22, 2016 at 9:35 PM, Dan Tenenbaum <dtenenba at fredhutch.or
>> g>
>> wrote:
>>
>>>
>>> My understanding is that this happens if you ever had non-linear
>>> commit
>>> history in your github repository (i.e. more than one branch
>>> changed and
>>> then were merged together), or if you used the old git/svn bridge.
>>> As far
>>> as I understand it, the only solution (in the near term) is to
>>> cherry pick
>>> the commits you want, a la
>>>
>>>
>>> https://bioconductor.org/developers/how-to/git-mirrors/#dealing-wit
>>> h-prior-history--merge-conflicts
>>>
>>> And this has to be done every time you want to sync git to svn.
>>>
>>> Dan
>>>
>>>
>>> ----- Original Message -----
>>>>
>>>> From: "Kasper Daniel Hansen" <kasperdanielhansen at gmail.com>
>>>> To: "bioc-devel" <bioc-devel at r-project.org>
>>>> Sent: Wednesday, June 22, 2016 6:11:24 PM
>>>> Subject: [Bioc-devel] git svn dcommit
>>>>
>>>> So I have made some updates to minfi and they are "safe" in
>>>> Github.  I
>>> now
>>>>
>>>> want to commit them to Bioconductor.  I get pretty strange
>>>> results,
>>>> although I never really understand what is going on.
>>>>
>>>> 1. I clone a fresh copy of minfi from Github.
>>>> 2. I do
>>>> # bash update_remotes.sh
>>>> (using proper path of course)
>>>> 3. I do
>>>> # git checkout devel
>>>> # git svn rebase
>>>> # git merge master --log
>>>> without any hiccups, and all seems to work so far.
>>>>
>>>> Then I do
>>>>   # git svn dcommit --add-author-from
>>>>
>>>> and hell starts (see output below).  What is kind of weird is
>>>> that now it
>>>> wants me to do 241 (!!!!!) rebase.  And it starts to involve
>>>> commits or
>>>> changes in files that haven't been touch for months.  This is
>>>> really
>>> pretty
>>>>
>>>> weird, given that I have completed the previous steps fine.
>>>>
>>>> Any idea?  Otherwise I hope I can get special help at Stanford in
>>>> a few
>>>> days ...
>>>>
>>>> Best,
>>>> Kasper
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> $ git svn dcommit --add-author-from
>>>> Committing to
>>>> https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/minfi
>>>>   ...
>>>> M DESCRIPTION
>>>>
>>>> ERROR from SVN:
>>>> Item is out of date: Item
>>>> '/trunk/madman/Rpacks/minfi/DESCRIPTION' is out
>>>> of date
>>>> W: 85e070dd7d7825132ca3e6399f2e4dc19195b627 and
>>> refs/remotes/git-svn-devel
>>>>
>>>> differ, using rebase:
>>>> :100644 100644 0025283098af2a8f4376b1300533a4c5aabaea7b
>>>> 8ac95ea78753b0a25d97c5debecbc6b2ead04ac0 M DESCRIPTION
>>>> :100644 100644 64a40f0b2655c7953ff154b42d6fa849e14462d3
>>>> 92430c671d00d2131f5dc59cd3dbaa54679b585a M NAMESPACE
>>>> :040000 040000 732260942165586cd80d15ad9aa923e0969f604f
>>>> 5098b8e0b0cabed337857680555df1ea6dc853f8 M R
>>>> :040000 040000 655f45f8ddd850a62a643151b73711c12ca0c5bb
>>>> 9e9250da0089f89b9fb9ab986c617dbe66a3aab2 M inst
>>>> :040000 040000 3b781c09f0472bdff07ee734418b1bc263a31bd9
>>>> 0f59f20b6cc89eaeeb94626a4445e3da26cef08f M man
>>>> :040000 040000 dd0723ff2712c28820000b81fafc1eb2de441e86
>>>> 83da824cbedf66e528e93ba03abf4adb7e243669 M vignettes
>>>> First, rewinding head to replay your work on top of it...
>>>> Applying: updated citation information
>>>> Using index info to reconstruct a base tree...
>>>> .git/rebase-apply/patch:34: trailing whitespace.
>>>> beanplot,
>>>> .git/rebase-apply/patch:35: trailing whitespace.
>>>> RColorBrewer,
>>>> .git/rebase-apply/patch:36: trailing whitespace.
>>>> nor1mix,
>>>> .git/rebase-apply/patch:37: trailing whitespace.
>>>> siggenes,
>>>> .git/rebase-apply/patch:38: trailing whitespace.
>>>> limma,
>>>> warning: squelched 287 whitespace errors
>>>> warning: 292 lines add whitespace errors.
>>>> Falling back to patching base and 3-way merge...
>>>> Auto-merging vignettes/minfi.bib
>>>> CONFLICT (add/add): Merge conflict in vignettes/minfi.bib
>>>> Auto-merging man/utils.Rd
>>>> CONFLICT (add/add): Merge conflict in man/utils.Rd
>>>> Auto-merging man/read.450k.sheet.Rd
>>>> CONFLICT (add/add): Merge conflict in man/read.450k.sheet.Rd
>>>> Auto-merging man/read.450k.exp.Rd
>>>> CONFLICT (add/add): Merge conflict in man/read.450k.exp.Rd
>>>> Auto-merging man/read.450k.Rd
>>>> CONFLICT (add/add): Merge conflict in man/read.450k.Rd
>>>> Auto-merging man/preprocessQuantile.Rd
>>>> CONFLICT (add/add): Merge conflict in man/preprocessQuantile.Rd
>>>> Auto-merging man/mdsPlot.Rd
>>>> CONFLICT (add/add): Merge conflict in man/mdsPlot.Rd
>>>> Auto-merging man/getAnnotation.Rd
>>>> CONFLICT (add/add): Merge conflict in man/getAnnotation.Rd
>>>> Auto-merging man/estimateCellCounts.Rd
>>>> CONFLICT (add/add): Merge conflict in man/estimateCellCounts.Rd
>>>> Auto-merging man/densityBeanPlot.Rd
>>>> CONFLICT (add/add): Merge conflict in man/densityBeanPlot.Rd
>>>> Auto-merging man/cpgCollapse.Rd
>>>> CONFLICT (add/add): Merge conflict in man/cpgCollapse.Rd
>>>> Auto-merging man/bumphunter.Rd
>>>> CONFLICT (add/add): Merge conflict in man/bumphunter.Rd
>>>> Auto-merging man/blockFinder.Rd
>>>> CONFLICT (add/add): Merge conflict in man/blockFinder.Rd
>>>> Auto-merging man/RGChannelSet-class.Rd
>>>> CONFLICT (add/add): Merge conflict in man/RGChannelSet-class.Rd
>>>> Auto-merging man/GenomicRatioSet-class.Rd
>>>> CONFLICT (add/add): Merge conflict in man/GenomicRatioSet-
>>>> class.Rd
>>>> Auto-merging man/GenomicMethylSet-class.Rd
>>>> CONFLICT (add/add): Merge conflict in man/GenomicMethylSet-
>>>> class.Rd
>>>> Auto-merging inst/unitTests/test_preprocess.R
>>>> CONFLICT (add/add): Merge conflict in
>>>> inst/unitTests/test_preprocess.R
>>>> Auto-merging inst/NEWS.Rd
>>>> CONFLICT (add/add): Merge conflict in inst/NEWS.Rd
>>>> Auto-merging R/utils.R
>>>> CONFLICT (add/add): Merge conflict in R/utils.R
>>>> Auto-merging R/rset.R
>>>> CONFLICT (add/add): Merge conflict in R/rset.R
>>>> Auto-merging R/rgset.R
>>>> CONFLICT (add/add): Merge conflict in R/rgset.R
>>>> Auto-merging R/read.manifest.R
>>>> CONFLICT (add/add): Merge conflict in R/read.manifest.R
>>>> Auto-merging R/read.450k.R
>>>> CONFLICT (add/add): Merge conflict in R/read.450k.R
>>>> Auto-merging R/preprocessSwan.R
>>>> CONFLICT (add/add): Merge conflict in R/preprocessSwan.R
>>>> Auto-merging R/preprocess.R
>>>> CONFLICT (add/add): Merge conflict in R/preprocess.R
>>>> Auto-merging R/plot.R
>>>> CONFLICT (add/add): Merge conflict in R/plot.R
>>>> Auto-merging R/mset.R
>>>> CONFLICT (add/add): Merge conflict in R/mset.R
>>>> Auto-merging R/manifest.R
>>>> CONFLICT (add/add): Merge conflict in R/manifest.R
>>>> Auto-merging R/grset.R
>>>> CONFLICT (add/add): Merge conflict in R/grset.R
>>>> Auto-merging R/gmset.R
>>>> CONFLICT (add/add): Merge conflict in R/gmset.R
>>>> Auto-merging R/getSex.R
>>>> CONFLICT (add/add): Merge conflict in R/getSex.R
>>>> Auto-merging R/estimateCellCounts.R
>>>> CONFLICT (add/add): Merge conflict in R/estimateCellCounts.R
>>>> Auto-merging R/bumphunter.R
>>>> CONFLICT (add/add): Merge conflict in R/bumphunter.R
>>>> Auto-merging R/blocks.R
>>>> CONFLICT (add/add): Merge conflict in R/blocks.R
>>>> Auto-merging R/anno.R
>>>> CONFLICT (add/add): Merge conflict in R/anno.R
>>>> Auto-merging NAMESPACE
>>>> CONFLICT (add/add): Merge conflict in NAMESPACE
>>>> Auto-merging DESCRIPTION
>>>> CONFLICT (add/add): Merge conflict in DESCRIPTION
>>>> error: Failed to merge in the changes.
>>>> Patch failed at 0001 updated citation information
>>>> The copy of the patch that failed is found in: .git/rebase-
>>>> apply/patch
>>>>
>>>> When you have resolved this problem, run "git rebase --continue".
>>>> If you prefer to skip this patch, run "git rebase --skip"
>>>> instead.
>>>> To check out the original branch and stop rebasing, run "git
>>>> rebase
>>>> --abort".
>>>>
>>>> rebase refs/remotes/git-svn-devel: command returned error: 128
>>>>
>>>> kaspers-air:~/Work/packages_github/minfi (devel *+|REBASE 1/241)
>>>> $
>>>>
>>>>        [[alternative HTML version deleted]]
>>>>
>>>> _______________________________________________
>>>> Bioc-devel at r-project.org mailing list
>>>> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>> 	[[alternative HTML version deleted]]
>>
>> _______________________________________________
>> 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}}



More information about the Bioc-devel mailing list