← Back to team overview

dolfin team mailing list archive

Re: [Fenics] Deadline for merge of development branches

 

On 30/03/13 07:55, Anders Logg wrote:
> On Thu, Mar 28, 2013 at 10:06:11PM +0000, Florian Rathgeber wrote:
>> On 27/03/13 21:40, Anders Logg wrote:
>>> On Wed, Mar 27, 2013 at 03:23:53PM +0000, Florian Rathgeber wrote:
>>>> On 26/03/13 22:32, Anders Logg wrote:
>>>>> On Tue, Mar 26, 2013 at 09:57:00PM +0000, Florian Rathgeber
>>>>> wrote: ok. So from what I've heard so far, it seems there are
>>>>> really no strong objections to converting to git in combination
>>>>> with stripping, and forcing all branches to start from scratch
>>>>> on the git side.
>>>>>
>>>>> I wouldn't mind making it easier to transition feature
>>>>> branches, but it seems very difficult to do so.
>>>>
>>>> Yes, I still haven't found a satisfactory solution that is safe
>>>> in all cases. The only safe solution I can think of at the moment
>>>> is: 1) bzr -> git convert trunk with export of marks files 2)
>>>> import *all* feature branches 3) filter the entire history,
>>>> removing files we don't want 4) archive the new git repo with
>>>> *all* branches on the fenics webserver with public read-only
>>>> access 5) push only the master branch (bzr trunk) to bitbucket 6)
>>>> instruct people how they can fetch their feature branches into
>>>> their own (local) clones and then push to their own forks
>>>
>>> What exactly does it mean to import all branches? Will it somehow
>>> affect repository that we put on bitbucket?
>>>
>>>> I've asked a question on SO, maybe someone has an idea:
>>>> http://stackoverflow.com/q/15660467/396967
>>>>
>>>> I'm currently discussing with Jelmer on #bzr: There's yet
>>>> another conversion route using bzr dpush and/or bzr serve --git.
>>>> That doesn't seems very promising either though: it's mostly
>>>> designed to allow contributing to git projects using bzr (and we
>>>> want the opposite).
>>>
>>> ok. My main take on this right now is that I haven't heard anyone
>>> saying that it's important to convert the feature branches, so I'm
>>> not going to spend a lot of time thinking about it. :-) But as
>>> before, if you come up with a good solution, I wouldn't mind.
>>>
>>> I've moved the conversion script from the old gist to bitbucket.
>>> The plan is to use this script to do the conversion:
>>>
>>> https://bitbucket.org/fenics-project/fenics-bzr-to-git-conversion-2013
>>>
>>>  This should happen next weekend.
>>
>> I've updated the conversion script and have it call another script to
>> import all branches registered on launchpad for the given project. So
>> when running the script you end up with a git repository for the
>> project which contains *all* bzr branches from launchpad migrated to
>> git with the correct ancestry relationships etc. An additional
>> advantage is that obsolete branches fully "contained" within other
>> branches are skipped.
> 
> Great thanks. I haven't tried it yet but it looks good. So if I
> understand correctly, this will result in:
> 
> 1. A repository on bitbucket which is only a stripped version of the
>    master (not containing any relationship to the other branches).

The script doesn't do any filtering/history rewriting. I'll write a
separate script doing the filtering for DOLFIN and FFC. For these I
think we should keep archives of both the filtered and non-filtered
repositories on the FEniCS webserver.

But only the master branch will be pushed to BitBucket.

> 2. Git branches for all the Launchpad branches which can be used as
>    starting points for those who wish to migrate their branches to
>    git now.

Yes, everyone who wants to fetch the git branch converted from their
former launchpad bzr branch can do so by adding the archive repository
as a git remote:

$ git remote add -t branch-name archive
http://fenicsproject.org/path/to/dolfin.git
$ git fetch archive
$ git checkout branch-name

> 3. Developers who want to migrate branches will have to immediately
>    get their new git branches and continue work in those. Continued
>    work on the Launchpad side after the conversion will break stuff.

They will need to migrate any further changes they make to their
launchpad branches after the cut-off point for the conversion by hand.
So yes, they should immediately start working on the git branches.

>> Now we need to decide the final list of files to strip for DOLFIN and
>> FFC. Presumably there's no other projects we want to filter history?
>> Then it's relatively straightforward to add a script to strip those
>> files from history.
> 
> Yes. Let's try to finalize the strip lists for DOLFIN and FFC before
> next weekend.

OK.

Florian

> --
> Anders

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature


Follow ups

References