grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: bzr is online


From: Bean
Subject: Re: bzr is online
Date: Mon, 9 Nov 2009 16:53:37 +0800

On Mon, Nov 9, 2009 at 4:41 PM, Vladimir 'phcoder' Serbinenko
<address@hidden> wrote:
> Bean wrote:
>> On Mon, Nov 9, 2009 at 4:45 AM, Vladimir 'phcoder' Serbinenko
>> <address@hidden> wrote:
>>
>>> Bean wrote:
>>>
>>>> On Sun, Nov 8, 2009 at 11:36 PM, Vladimir 'phcoder' Serbinenko
>>>> <address@hidden> wrote:
>>>>
>>>>
>>>>> Hello, all. As you may have heard or noticed we had a data corruption in
>>>>> bzr repository. We couldn't find for sure what caused it but we could
>>>>> recover it, Robert Millan is running regular backups. But please be
>>>>> careful in the future.
>>>>> 1) Don't use bzr-svn. The IDs won't match anyway so it's useless. I
>>>>> removed bzr-svn altogether
>>>>> 2) Don't use bzr+ssh. Old daemon on savannah is one of possible vectors.
>>>>> --2a format should block it but don't even try please. Use
>>>>> sftp://bzr.savannah.gnu.org/srv/bzr/grub/
>>>>> <sftp://bzr.savannah.gnu.org/srv/bzr/grub/trunk/grub>
>>>>> 3) Take precautions when handling your current branches. As the IDs
>>>>> don't match the bzr trunk you need to migrate it anyway. If you have
>>>>> small number of branches and history isn't important just create a patch
>>>>> and apply it to new bzr branch of current trunk. If you have large
>>>>> number of branches or no local copy contact me privately.
>>>>> 4) Regularly run "bzr check" on your repository
>>>>> 5) Sign your commits. For this add
>>>>> create_signatures = always
>>>>> to your bazaar.conf
>>>>> This has double use: security and integrity.
>>>>>
>>>>> Currentyl we haven't set up syncronisation between bzr and svn. Wait
>>>>> further instructions before comitting to mainstream
>>>>>
>>>>>
>>>> Hi,
>>>>
>>>> I just sync my branch with main bzr repo, and find similar issue. It
>>>> seems the bzr diff  has bug that could cause problem with renames, for
>>>> example, don't use this:
>>>>
>>>> old branch:
>>>> bzr diff > aa.diff
>>>>
>>>> new branch:
>>>> bzr patch aa.diff
>>>>
>>>> The renamed file could get lost in the process. The only reliable way
>>>> to apply patch is to export the whole tree from old branch, and add
>>>> them in the new branch.
>>>>
>>>>
>>>>
>>> I don't know what exactly do you mean but the concern is safety: your
>>> approach may result in corruption to be transfered to new repo
>>>
>>
>> Hi,
>>
>> It's very easy to verify, for example, run these commands:
>>
>> bzr mv COPYING COPYING1
>> bzr diff > aa.diff
>>
>> Output:
>> === renamed file 'COPYING' => 'COPYING1'
>>
>> This is obviously wrong, as neither "patch" nor "bzr patch" recognize
>> this format, so if you apply it with:
>>
>> bzr patch aa.diff
>>
>> Nothing happens. Therefore, 'bzr diff' is useless to create patch file
>> containing renames.
>>
>> BTW, my bzr version is 2.0.2
>>
>>
> I understood this part but haven't understood what do you propose as an
> alternative.
> (BTW feel free to report this issue to bzr mainstream)

Hi,

I use the following method to apply patches:

find a common parent for old and new branch.
move one revision up in old branch,
remove all files expect .bzr in new branch, then copy files from old branch.
use bzr commit to commit in new branch, the move new branch up one
revision, and it has an identical tree as old branch.
repeat the steps until all revision is synced,

-- 
Bean

My repository: https://launchpad.net/burg
Document: https://help.ubuntu.com/community/Burg




reply via email to

[Prev in Thread] Current Thread [Next in Thread]