You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Piotr Kabaciński <pi...@kabot.net> on 2011/01/25 19:32:09 UTC

mergeinfo clean

Hi,

Working with svn project for longer time causes growth of mergeinfo 
property and very unreadable diffs between commits.
SVN with every commit updates mergeinfo value what is needed to keep 
tracking merges, but sometimes updating this value is no longer needed 
because merged branch no longer exists and i do not need to remember 
about it.
I created a program that checks every mergeinfo property and if listed 
path doesn't exists it is removed.
What do you think about this solution? Do you think it is safe?

greetings
-- 
Piotr Kabacinski
a2Fib3Q=--------

Re: mergeinfo clean

Posted by Piotr Kabaciński <pi...@kabot.net>.
On 01/26/2011 07:47 PM, Daniel Shahaf wrote:
> Ulrich Eckhardt wrote on Wed, Jan 26, 2011 at 09:52:06 +0100:
>> Curiosity up front: I couldn't find an encoding that displayed the
>> letter/accent between the 'i' and 's' in your name, I only get a box there.
>> What encoding are you using and what should be there?
>
> Shows fine here (small N with acute accent), and Vim tells me it's U+0144.

Checking source of the message (header From) will tell you the truth - 
ISO-8859-2 (latin2).
btw, i was convinced i had utf8, until now :)

-- 
Piotr Kabacinski
a2Fib3Q=--------

Re: mergeinfo clean

Posted by Daniel Shahaf <d....@daniel.shahaf.name>.
Ulrich Eckhardt wrote on Wed, Jan 26, 2011 at 09:52:06 +0100:
> Curiosity up front: I couldn't find an encoding that displayed the 
> letter/accent between the 'i' and 's' in your name, I only get a box there. 
> What encoding are you using and what should be there?

Shows fine here (small N with acute accent), and Vim tells me it's U+0144.

Re: mergeinfo clean

Posted by Piotr Kabaciński <pi...@kabot.net>.
On 01/26/2011 09:52 AM, Ulrich Eckhardt wrote:
>> Working with svn project for longer time causes growth of mergeinfo
>> property and very unreadable diffs between commits.
>
> There is one good rule about merging, and that is to always merge to the same
> root directory of the project. Once parts of a project are merged separately,
> they retain their own svn:mergeinfo property, and every merge to the root
> then changes these, too, even if nothing on that child item was changed. This
> of course requires that you don't mix different changes in a single commit,
> but that is a best practice anyway.

Merging always to the same directory that is what i am trying to do. 
Unfortunately it doesn't work every time. I agree that project could be 
leaded wrong but (and again, unfortunately) i had to work with it and 
handle problems like this one :)


>> SVN with every commit updates mergeinfo value what is needed to keep
>> tracking merges, but sometimes updating this value is no longer needed
>> because merged branch no longer exists and i do not need to remember
>> about it.
>> I created a program that checks every mergeinfo property and if listed
>> path doesn't exists it is removed.
>> What do you think about this solution? Do you think it is safe?
>
> You could nuke the whole svn:mergeinfo without SVN itself falling apart.
> However, some things won't work "right" automatically any more. In particular
> SVN won't ignore requests to merge things that were already merged, because
> it doesn't know about them. Now, the chance of someone merging from a deleted
> branch (which is of course still possible!) are small, so I guess your method
> is safe.

I guess it's safe. Some tests made today brought much fewer mergeinfo 
entries and merges with existing branches are still possible.
Naturally i'm losing some tracking information, but as you notice chance 
to need it are small. And in fact, if i really wanted to go back to 
state before cleaning action i could edit mergeinfo properties manually.

greetings
-- 
Piotr Kabacinski
a2Fib3Q=--------

Re: mergeinfo clean

Posted by Ulrich Eckhardt <ul...@dominolaser.com>.
Curiosity up front: I couldn't find an encoding that displayed the 
letter/accent between the 'i' and 's' in your name, I only get a box there. 
What encoding are you using and what should be there?


On Tuesday 25 January 2011, Piotr Kabaciński wrote:
> Working with svn project for longer time causes growth of mergeinfo
> property and very unreadable diffs between commits.

There is one good rule about merging, and that is to always merge to the same 
root directory of the project. Once parts of a project are merged separately, 
they retain their own svn:mergeinfo property, and every merge to the root 
then changes these, too, even if nothing on that child item was changed. This 
of course requires that you don't mix different changes in a single commit, 
but that is a best practice anyway.

> SVN with every commit updates mergeinfo value what is needed to keep
> tracking merges, but sometimes updating this value is no longer needed
> because merged branch no longer exists and i do not need to remember
> about it.
> I created a program that checks every mergeinfo property and if listed
> path doesn't exists it is removed.
> What do you think about this solution? Do you think it is safe?

You could nuke the whole svn:mergeinfo without SVN itself falling apart. 
However, some things won't work "right" automatically any more. In particular 
SVN won't ignore requests to merge things that were already merged, because 
it doesn't know about them. Now, the chance of someone merging from a deleted 
branch (which is of course still possible!) are small, so I guess your method 
is safe.

Cheers!

Uli

-- 
ML: http://subversion.apache.org/docs/community-guide/mailing-lists.html
FAQ: http://subversion.apache.org/faq.html
Docs: http://svnbook.red-bean.com/


**************************************************************************************
Domino Laser GmbH, Fangdieckstraße 75a, 22547 Hamburg, Deutschland
Geschäftsführer: Thorsten Föcking, Amtsgericht Hamburg HR B62 932
**************************************************************************************
Visit our website at <http://www.dominolaser.com/>
**************************************************************************************
Diese E-Mail einschließlich sämtlicher Anhänge ist nur für den Adressaten bestimmt und kann vertrauliche Informationen enthalten. Bitte benachrichtigen Sie den Absender umgehend, falls Sie nicht der beabsichtigte Empfänger sein sollten. Die E-Mail ist in diesem Fall zu löschen und darf weder gelesen, weitergeleitet, veröffentlicht oder anderweitig benutzt werden.
E-Mails können durch Dritte gelesen werden und Viren sowie nichtautorisierte Änderungen enthalten. Domino Laser GmbH ist für diese Folgen nicht verantwortlich.
**************************************************************************************