Re: [Esug-list] Antwort: Call for your input on questions you ask yourselves during merge

SD
Stéphane Ducasse
Sat, Nov 26, 2011 7:56 AM

tx :)

On Nov 24, 2011, at 1:38 PM, Thorsten.Seitz@deutschebahn.com wrote:

  • When the version to be merged into the trunk is on a branch which I
    already did merge a couple of versions earlier I want to have to see/think
    about only those changes that are new (i.e. the changes between the version
    last merged and the current version to be merged and not all changes
    between the current version to be merged and the trunk version to be merged
    into)

e.g.

1.0 -> 2.0 -> 3.0 -> 4.0 -> 5.0 -> 6.0 -> 7.0  Trunk
\                /            / ?? questions asked here
\              /            /
-> 2.1 -> 2.2 -> 2.3 -> 2.4  Branch

The branch version 2.2 has already been merged into trunk version 5.0 some
time earlier.
Therefore I'd like to merge only the changes between 2.2 and 2.4 into 7.0.
I don't know what Pharo does but VisualWorksdisplays all changes between
2.4 and 7.0 while giving additional information about the last common
version which is determined to be 2.0 because previous merges are not
considered.
This forces me to think about how to merge all changes up to version 2.2
once again.
We fixed that in our tools, of course (in VW 7.6), offering an additional
merge option which only merges the changes since a user selected common
version.

Regards
Thorsten

Thorsten Seitz
Development Center Architekturkonzeption und -entwicklung (T.SVD 32)

DB Systel GmbH
Raum 5C.136, Alfred-Herrhausen-Allee 1, 65760 Eschborn
Tel. 069 265-48245, intern 955-


Der DB-Konzern im Internet >> http://www.deutschebahn.com

Sitz der Gesellschaft: Frankfurt am Main
Registergericht: Frankfurt am Main, HRB 78707
USt-IdNr.: DE252204770
Geschäftsführer: Detlef Exner (Vorsitzender), Dr. Burkhard Klanke, Dr.
Klaus Rüffler
Vorsitzender des Aufsichtsrates: Dr. Rolf Kranüchel

|------------>
| Von:      |
|------------>

--------------------------------------------------------------------------------------------------------------------------------------------------|

|Stéphane Ducasse stephane.ducasse@inria.fr                                                                                                      |

--------------------------------------------------------------------------------------------------------------------------------------------------|

|------------>
| An:        |
|------------>

--------------------------------------------------------------------------------------------------------------------------------------------------|

|ESUG Members esug-list@lists.esug.org                                                                                                          |

--------------------------------------------------------------------------------------------------------------------------------------------------|

|------------>
| Datum:    |
|------------>

--------------------------------------------------------------------------------------------------------------------------------------------------|

|23.11.2011 16:58                                                                                                                                  |

--------------------------------------------------------------------------------------------------------------------------------------------------|

|------------>
| Betreff:  |
|------------>

--------------------------------------------------------------------------------------------------------------------------------------------------|

|[Esug-list] Call for your input on questions you ask yourselves during merge                                                                    |

--------------------------------------------------------------------------------------------------------------------------------------------------|

|------------>
| Gesendet  |
| von:      |
|------------>

--------------------------------------------------------------------------------------------------------------------------------------------------|

|esug-list-bounces@lists.esug.org                                                                                                                  |

--------------------------------------------------------------------------------------------------------------------------------------------------|

Hi guys

We are writing some articles on the work of veronica to support merging
activities.  We need your input great smalltalk community :)
What are the questions that you ask yourselves when you are/want to merge
some code in your project?
We would like to do a compilation of questions and also evaluate how the
solution of veronica solves them or part of them.

Here are some typical questions we asked ourselves.
- What other changes did this change require?
- Can I integrate this change right now?
- How large it is?
- Who made it?
- Is it still valid (when I'm working on an old change)?
- Is this change impacted by a change that happened in another
branch of my software?

Stef D., Andy K. and Veronica U.


Esug-list mailing list
Esug-list@lists.esug.org
http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org

tx :) On Nov 24, 2011, at 1:38 PM, Thorsten.Seitz@deutschebahn.com wrote: > - When the version to be merged into the trunk is on a branch which I > already did merge a couple of versions earlier I want to have to see/think > about only those changes that are new (i.e. the changes between the version > last merged and the current version to be merged and not all changes > between the current version to be merged and the trunk version to be merged > into) > > e.g. > > 1.0 -> 2.0 -> 3.0 -> 4.0 -> 5.0 -> 6.0 -> 7.0 Trunk > \ / / ?? questions asked here > \ / / > -> 2.1 -> 2.2 -> 2.3 -> 2.4 Branch > > The branch version 2.2 has already been merged into trunk version 5.0 some > time earlier. > Therefore I'd like to merge only the changes between 2.2 and 2.4 into 7.0. > I don't know what Pharo does but VisualWorksdisplays all changes between > 2.4 and 7.0 while giving additional information about the last common > version which is determined to be 2.0 because previous merges are not > considered. > This forces me to think about how to merge all changes up to version 2.2 > once again. > We fixed that in our tools, of course (in VW 7.6), offering an additional > merge option which only merges the changes since a user selected common > version. > > Regards > Thorsten > > > Thorsten Seitz > Development Center Architekturkonzeption und -entwicklung (T.SVD 32) > > DB Systel GmbH > Raum 5C.136, Alfred-Herrhausen-Allee 1, 65760 Eschborn > Tel. 069 265-48245, intern 955- > _________________________________________________________________________________ > > Der DB-Konzern im Internet >> http://www.deutschebahn.com > > Sitz der Gesellschaft: Frankfurt am Main > Registergericht: Frankfurt am Main, HRB 78707 > USt-IdNr.: DE252204770 > Geschäftsführer: Detlef Exner (Vorsitzender), Dr. Burkhard Klanke, Dr. > Klaus Rüffler > Vorsitzender des Aufsichtsrates: Dr. Rolf Kranüchel > > > |------------> > | Von: | > |------------> >> --------------------------------------------------------------------------------------------------------------------------------------------------| > |Stéphane Ducasse <stephane.ducasse@inria.fr> | >> --------------------------------------------------------------------------------------------------------------------------------------------------| > |------------> > | An: | > |------------> >> --------------------------------------------------------------------------------------------------------------------------------------------------| > |ESUG Members <esug-list@lists.esug.org> | >> --------------------------------------------------------------------------------------------------------------------------------------------------| > |------------> > | Datum: | > |------------> >> --------------------------------------------------------------------------------------------------------------------------------------------------| > |23.11.2011 16:58 | >> --------------------------------------------------------------------------------------------------------------------------------------------------| > |------------> > | Betreff: | > |------------> >> --------------------------------------------------------------------------------------------------------------------------------------------------| > |[Esug-list] Call for your input on questions you ask yourselves during merge | >> --------------------------------------------------------------------------------------------------------------------------------------------------| > |------------> > | Gesendet | > | von: | > |------------> >> --------------------------------------------------------------------------------------------------------------------------------------------------| > |esug-list-bounces@lists.esug.org | >> --------------------------------------------------------------------------------------------------------------------------------------------------| > > > > > > Hi guys > > We are writing some articles on the work of veronica to support merging > activities. We need your input great smalltalk community :) > What are the questions that you ask yourselves when you are/want to merge > some code in your project? > We would like to do a compilation of questions and also evaluate how the > solution of veronica solves them or part of them. > > Here are some typical questions we asked ourselves. > - What other changes did this change require? > - Can I integrate this change right now? > - How large it is? > - Who made it? > - Is it still valid (when I'm working on an old change)? > - Is this change impacted by a change that happened in another > branch of my software? > > Stef D., Andy K. and Veronica U. > > > _______________________________________________ > Esug-list mailing list > Esug-list@lists.esug.org > http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org > > >
AK
Andy Kellens
Sat, Nov 26, 2011 9:50 AM

Hello,

Already many thanks for all the input we received.
As a way to stimulate the discussion a bit, you can find my list of questions below.

  • Who made the changes?
  • How big are the changes? Are they local or do they touch a lot of stuff?
  • Was this method changed a lot of times in the past? Why did it change?
    (I noticed in my projects stuff that keeps on changing most of the times indicates that something is not really right in the design)
  • Is this change part of a whole series of changes? (when someone is working on a feature and commits intermittently, I sometimes prefer to wait loading their changes until I know they are done)
  • Why were the changes made? Bugfix? New feature? Refactoring? Cleanup?
  • Who wrote the original code that was changed? Was any of my old code changed?
  • Is the commit coherent? Do all the changes within the commit belong together or are they unrelated?
    (This also happens often I think: someone fixes a bug and decides to also rename a method or clean something up … very annoying to find out what really happened)
  • Is this change impacted/influenced by a change that happened in another branch of my software?
  • Did this change ever happen before?
  • Is this change reverting the code to an old state?
    (someone changes some code to actually roll back something; would like to know this since it might be by accident)
  • Did the person who made the change also update the tests? Was this necessary?
  • If I just load the change, what are the changes that it breaks my current system?
  • When multiple packages were committed at the same time: do I really need to load all of them now, or can I just load/merge with the version of the package I'm working on?

Kind regards,

Andy

On 26 Nov 2011, at 08:56, Stéphane Ducasse wrote:

tx :)

On Nov 24, 2011, at 1:38 PM, Thorsten.Seitz@deutschebahn.com wrote:

  • When the version to be merged into the trunk is on a branch which I
    already did merge a couple of versions earlier I want to have to see/think
    about only those changes that are new (i.e. the changes between the version
    last merged and the current version to be merged and not all changes
    between the current version to be merged and the trunk version to be merged
    into)

e.g.

1.0 -> 2.0 -> 3.0 -> 4.0 -> 5.0 -> 6.0 -> 7.0  Trunk
\                /            / ?? questions asked here
\              /            /
-> 2.1 -> 2.2 -> 2.3 -> 2.4  Branch

The branch version 2.2 has already been merged into trunk version 5.0 some
time earlier.
Therefore I'd like to merge only the changes between 2.2 and 2.4 into 7.0.
I don't know what Pharo does but VisualWorksdisplays all changes between
2.4 and 7.0 while giving additional information about the last common
version which is determined to be 2.0 because previous merges are not
considered.
This forces me to think about how to merge all changes up to version 2.2
once again.
We fixed that in our tools, of course (in VW 7.6), offering an additional
merge option which only merges the changes since a user selected common
version.

Regards
Thorsten

Thorsten Seitz
Development Center Architekturkonzeption und -entwicklung (T.SVD 32)

DB Systel GmbH
Raum 5C.136, Alfred-Herrhausen-Allee 1, 65760 Eschborn
Tel. 069 265-48245, intern 955-


Der DB-Konzern im Internet >> http://www.deutschebahn.com

Sitz der Gesellschaft: Frankfurt am Main
Registergericht: Frankfurt am Main, HRB 78707
USt-IdNr.: DE252204770
Geschäftsführer: Detlef Exner (Vorsitzender), Dr. Burkhard Klanke, Dr.
Klaus Rüffler
Vorsitzender des Aufsichtsrates: Dr. Rolf Kranüchel

|------------>
| Von:      |
|------------>

--------------------------------------------------------------------------------------------------------------------------------------------------|

|Stéphane Ducasse stephane.ducasse@inria.fr                                                                                                      |

--------------------------------------------------------------------------------------------------------------------------------------------------|

|------------>
| An:        |
|------------>

--------------------------------------------------------------------------------------------------------------------------------------------------|

|ESUG Members esug-list@lists.esug.org                                                                                                          |

--------------------------------------------------------------------------------------------------------------------------------------------------|

|------------>
| Datum:    |
|------------>

--------------------------------------------------------------------------------------------------------------------------------------------------|

|23.11.2011 16:58                                                                                                                                  |

--------------------------------------------------------------------------------------------------------------------------------------------------|

|------------>
| Betreff:  |
|------------>

--------------------------------------------------------------------------------------------------------------------------------------------------|

|[Esug-list] Call for your input on questions you ask yourselves during merge                                                                    |

--------------------------------------------------------------------------------------------------------------------------------------------------|

|------------>
| Gesendet  |
| von:      |
|------------>

--------------------------------------------------------------------------------------------------------------------------------------------------|

|esug-list-bounces@lists.esug.org                                                                                                                  |

--------------------------------------------------------------------------------------------------------------------------------------------------|

Hi guys

We are writing some articles on the work of veronica to support merging
activities.  We need your input great smalltalk community :)
What are the questions that you ask yourselves when you are/want to merge
some code in your project?
We would like to do a compilation of questions and also evaluate how the
solution of veronica solves them or part of them.

Here are some typical questions we asked ourselves.
- What other changes did this change require?
- Can I integrate this change right now?
- How large it is?
- Who made it?
- Is it still valid (when I'm working on an old change)?
- Is this change impacted by a change that happened in another
branch of my software?

Stef D., Andy K. and Veronica U.


Esug-list mailing list
Esug-list@lists.esug.org
http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org

Hello, Already many thanks for all the input we received. As a way to stimulate the discussion a bit, you can find my list of questions below. * Who made the changes? * How big are the changes? Are they local or do they touch a lot of stuff? * Was this method changed a lot of times in the past? Why did it change? (I noticed in my projects stuff that keeps on changing most of the times indicates that something is not really right in the design) * Is this change part of a whole series of changes? (when someone is working on a feature and commits intermittently, I sometimes prefer to wait loading their changes until I know they are done) * Why were the changes made? Bugfix? New feature? Refactoring? Cleanup? * Who wrote the original code that was changed? Was any of my old code changed? * Is the commit coherent? Do all the changes within the commit belong together or are they unrelated? (This also happens often I think: someone fixes a bug and decides to also rename a method or clean something up … very annoying to find out what really happened) * Is this change impacted/influenced by a change that happened in another branch of my software? * Did this change ever happen before? * Is this change reverting the code to an old state? (someone changes some code to actually roll back something; would like to know this since it might be by accident) * Did the person who made the change also update the tests? Was this necessary? * If I just load the change, what are the changes that it breaks my current system? * When multiple packages were committed at the same time: do I really need to load all of them now, or can I just load/merge with the version of the package I'm working on? Kind regards, Andy On 26 Nov 2011, at 08:56, Stéphane Ducasse wrote: > tx :) > > On Nov 24, 2011, at 1:38 PM, Thorsten.Seitz@deutschebahn.com wrote: > >> - When the version to be merged into the trunk is on a branch which I >> already did merge a couple of versions earlier I want to have to see/think >> about only those changes that are new (i.e. the changes between the version >> last merged and the current version to be merged and not all changes >> between the current version to be merged and the trunk version to be merged >> into) >> >> e.g. >> >> 1.0 -> 2.0 -> 3.0 -> 4.0 -> 5.0 -> 6.0 -> 7.0 Trunk >> \ / / ?? questions asked here >> \ / / >> -> 2.1 -> 2.2 -> 2.3 -> 2.4 Branch >> >> The branch version 2.2 has already been merged into trunk version 5.0 some >> time earlier. >> Therefore I'd like to merge only the changes between 2.2 and 2.4 into 7.0. >> I don't know what Pharo does but VisualWorksdisplays all changes between >> 2.4 and 7.0 while giving additional information about the last common >> version which is determined to be 2.0 because previous merges are not >> considered. >> This forces me to think about how to merge all changes up to version 2.2 >> once again. >> We fixed that in our tools, of course (in VW 7.6), offering an additional >> merge option which only merges the changes since a user selected common >> version. >> >> Regards >> Thorsten >> >> >> Thorsten Seitz >> Development Center Architekturkonzeption und -entwicklung (T.SVD 32) >> >> DB Systel GmbH >> Raum 5C.136, Alfred-Herrhausen-Allee 1, 65760 Eschborn >> Tel. 069 265-48245, intern 955- >> _________________________________________________________________________________ >> >> Der DB-Konzern im Internet >> http://www.deutschebahn.com >> >> Sitz der Gesellschaft: Frankfurt am Main >> Registergericht: Frankfurt am Main, HRB 78707 >> USt-IdNr.: DE252204770 >> Geschäftsführer: Detlef Exner (Vorsitzender), Dr. Burkhard Klanke, Dr. >> Klaus Rüffler >> Vorsitzender des Aufsichtsrates: Dr. Rolf Kranüchel >> >> >> |------------> >> | Von: | >> |------------> >>> --------------------------------------------------------------------------------------------------------------------------------------------------| >> |Stéphane Ducasse <stephane.ducasse@inria.fr> | >>> --------------------------------------------------------------------------------------------------------------------------------------------------| >> |------------> >> | An: | >> |------------> >>> --------------------------------------------------------------------------------------------------------------------------------------------------| >> |ESUG Members <esug-list@lists.esug.org> | >>> --------------------------------------------------------------------------------------------------------------------------------------------------| >> |------------> >> | Datum: | >> |------------> >>> --------------------------------------------------------------------------------------------------------------------------------------------------| >> |23.11.2011 16:58 | >>> --------------------------------------------------------------------------------------------------------------------------------------------------| >> |------------> >> | Betreff: | >> |------------> >>> --------------------------------------------------------------------------------------------------------------------------------------------------| >> |[Esug-list] Call for your input on questions you ask yourselves during merge | >>> --------------------------------------------------------------------------------------------------------------------------------------------------| >> |------------> >> | Gesendet | >> | von: | >> |------------> >>> --------------------------------------------------------------------------------------------------------------------------------------------------| >> |esug-list-bounces@lists.esug.org | >>> --------------------------------------------------------------------------------------------------------------------------------------------------| >> >> >> >> >> >> Hi guys >> >> We are writing some articles on the work of veronica to support merging >> activities. We need your input great smalltalk community :) >> What are the questions that you ask yourselves when you are/want to merge >> some code in your project? >> We would like to do a compilation of questions and also evaluate how the >> solution of veronica solves them or part of them. >> >> Here are some typical questions we asked ourselves. >> - What other changes did this change require? >> - Can I integrate this change right now? >> - How large it is? >> - Who made it? >> - Is it still valid (when I'm working on an old change)? >> - Is this change impacted by a change that happened in another >> branch of my software? >> >> Stef D., Andy K. and Veronica U. >> >> >> _______________________________________________ >> Esug-list mailing list >> Esug-list@lists.esug.org >> http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org >> >> >> > > > _______________________________________________ > Esug-list mailing list > Esug-list@lists.esug.org > http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org
LR
Lukas Renggli
Sat, Nov 26, 2011 12:19 PM

I suspect that the author is the best person to answer all of the
questions that come up so far. Ideally I would like to be able to
directly get into contact with the author in the context of a
particular code change line. I would like to ask him questions and/or
ask/suggest improvements.

Ideally there should be no merging activities at all. Ideally whoever
wants the code in should bring it to a state i can just load and
understand: what does it do? is it tested? is it covered? ... in the
end it all boils down to: is it better?

Lukas

On 26 November 2011 10:50, Andy Kellens akellens@vub.ac.be wrote:

Hello,

Already many thanks for all the input we received.
As a way to stimulate the discussion a bit, you can find my list of questions below.

  • Who made the changes?
  • How big are the changes? Are they local or do they touch a lot of stuff?
  • Was this method changed a lot of times in the past? Why did it change?
    (I noticed in my projects stuff that keeps on changing most of the times indicates that something is not really right in the design)
  • Is this change part of a whole series of changes? (when someone is working on a feature and commits intermittently, I sometimes prefer to wait loading their changes until I know they are done)
  • Why were the changes made? Bugfix? New feature? Refactoring? Cleanup?
  • Who wrote the original code that was changed? Was any of my old code changed?
  • Is the commit coherent? Do all the changes within the commit belong together or are they unrelated?
    (This also happens often I think: someone fixes a bug and decides to also rename a method or clean something up … very annoying to find out what really happened)
  • Is this change impacted/influenced by a change that happened in another branch of my software?
  • Did this change ever happen before?
  • Is this change reverting the code to an old state?
    (someone changes some code to actually roll back something; would like to know this since it might be by accident)
  • Did the person who made the change also update the tests? Was this necessary?
  • If I just load the change, what are the changes that it breaks my current system?
  • When multiple packages were committed at the same time: do I really need to load all of them now, or can I just load/merge with the version of the package I'm working on?

Kind regards,

Andy

On 26 Nov 2011, at 08:56, Stéphane Ducasse wrote:

tx :)

On Nov 24, 2011, at 1:38 PM, Thorsten.Seitz@deutschebahn.com wrote:

  • When the version to be merged into the trunk is on a branch which I
    already did merge a couple of versions earlier I want to have to see/think
    about only those changes that are new (i.e. the changes between the version
    last merged and the current version to be merged and not all changes
    between the current version to be merged and the trunk version to be merged
    into)

e.g.

1.0 -> 2.0 -> 3.0 -> 4.0 -> 5.0 -> 6.0 -> 7.0  Trunk
       \                /             / ?? questions asked here
        \              /             /
         -> 2.1 -> 2.2 -> 2.3 -> 2.4  Branch

The branch version 2.2 has already been merged into trunk version 5.0 some
time earlier.
Therefore I'd like to merge only the changes between 2.2 and 2.4 into 7.0.
I don't know what Pharo does but VisualWorksdisplays all changes between
2.4 and 7.0 while giving additional information about the last common
version which is determined to be 2.0 because previous merges are not
considered.
This forces me to think about how to merge all changes up to version 2.2
once again.
We fixed that in our tools, of course (in VW 7.6), offering an additional
merge option which only merges the changes since a user selected common
version.

Regards
Thorsten

Thorsten Seitz
Development Center Architekturkonzeption und -entwicklung (T.SVD 32)

DB Systel GmbH
Raum 5C.136, Alfred-Herrhausen-Allee 1, 65760 Eschborn
Tel. 069 265-48245, intern 955-


Der DB-Konzern im Internet >> http://www.deutschebahn.com

Sitz der Gesellschaft: Frankfurt am Main
Registergericht: Frankfurt am Main, HRB 78707
USt-IdNr.: DE252204770
Geschäftsführer: Detlef Exner (Vorsitzender), Dr. Burkhard Klanke, Dr.
Klaus Rüffler
Vorsitzender des Aufsichtsrates: Dr. Rolf Kranüchel

|------------>
| Von:       |
|------------>

--------------------------------------------------------------------------------------------------------------------------------------------------|

|Stéphane Ducasse stephane.ducasse@inria.fr                                                                                                      |

--------------------------------------------------------------------------------------------------------------------------------------------------|

|------------>
| An:        |
|------------>

--------------------------------------------------------------------------------------------------------------------------------------------------|

|ESUG Members esug-list@lists.esug.org                                                                                                           |

--------------------------------------------------------------------------------------------------------------------------------------------------|

|------------>
| Datum:     |
|------------>

--------------------------------------------------------------------------------------------------------------------------------------------------|

|23.11.2011 16:58                                                                                                                                  |

--------------------------------------------------------------------------------------------------------------------------------------------------|

|------------>
| Betreff:   |
|------------>

--------------------------------------------------------------------------------------------------------------------------------------------------|

|[Esug-list] Call for your input on questions you ask yourselves     during merge                                                                    |

--------------------------------------------------------------------------------------------------------------------------------------------------|

|------------>
| Gesendet   |
| von:       |
|------------>

--------------------------------------------------------------------------------------------------------------------------------------------------|

|esug-list-bounces@lists.esug.org                                                                                                                  |

--------------------------------------------------------------------------------------------------------------------------------------------------|

Hi guys

We are writing some articles on the work of veronica to support merging
activities.  We need your input great smalltalk community :)
What are the questions that you ask yourselves when you are/want to merge
some code in your project?
We would like to do a compilation of questions and also evaluate how the
solution of veronica solves them or part of them.

Here are some typical questions we asked ourselves.
              - What other changes did this change require?
              - Can I integrate this change right now?
              - How large it is?
              - Who made it?
              - Is it still valid (when I'm working on an old change)?
              - Is this change impacted by a change that happened in another
branch of my software?

Stef D., Andy K. and Veronica U.


Esug-list mailing list
Esug-list@lists.esug.org
http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org

--
Lukas Renggli
www.lukas-renggli.ch

I suspect that the author is the best person to answer all of the questions that come up so far. Ideally I would like to be able to directly get into contact with the author in the context of a particular code change line. I would like to ask him questions and/or ask/suggest improvements. Ideally there should be no merging activities at all. Ideally whoever wants the code in should bring it to a state i can just load and understand: what does it do? is it tested? is it covered? ... in the end it all boils down to: is it better? Lukas On 26 November 2011 10:50, Andy Kellens <akellens@vub.ac.be> wrote: > Hello, > > Already many thanks for all the input we received. > As a way to stimulate the discussion a bit, you can find my list of questions below. > > * Who made the changes? > * How big are the changes? Are they local or do they touch a lot of stuff? > * Was this method changed a lot of times in the past? Why did it change? > (I noticed in my projects stuff that keeps on changing most of the times indicates that something is not really right in the design) > * Is this change part of a whole series of changes? (when someone is working on a feature and commits intermittently, I sometimes prefer to wait loading their changes until I know they are done) > * Why were the changes made? Bugfix? New feature? Refactoring? Cleanup? > * Who wrote the original code that was changed? Was any of my old code changed? > * Is the commit coherent? Do all the changes within the commit belong together or are they unrelated? > (This also happens often I think: someone fixes a bug and decides to also rename a method or clean something up … very annoying to find out what really happened) > * Is this change impacted/influenced by a change that happened in another branch of my software? > * Did this change ever happen before? > * Is this change reverting the code to an old state? > (someone changes some code to actually roll back something; would like to know this since it might be by accident) > * Did the person who made the change also update the tests? Was this necessary? > * If I just load the change, what are the changes that it breaks my current system? > * When multiple packages were committed at the same time: do I really need to load all of them now, or can I just load/merge with the version of the package I'm working on? > > Kind regards, > > Andy > > On 26 Nov 2011, at 08:56, Stéphane Ducasse wrote: > >> tx :) >> >> On Nov 24, 2011, at 1:38 PM, Thorsten.Seitz@deutschebahn.com wrote: >> >>> - When the version to be merged into the trunk is on a branch which I >>> already did merge a couple of versions earlier I want to have to see/think >>> about only those changes that are new (i.e. the changes between the version >>> last merged and the current version to be merged and not all changes >>> between the current version to be merged and the trunk version to be merged >>> into) >>> >>> e.g. >>> >>> 1.0 -> 2.0 -> 3.0 -> 4.0 -> 5.0 -> 6.0 -> 7.0  Trunk >>>        \                /             / ?? questions asked here >>>         \              /             / >>>          -> 2.1 -> 2.2 -> 2.3 -> 2.4  Branch >>> >>> The branch version 2.2 has already been merged into trunk version 5.0 some >>> time earlier. >>> Therefore I'd like to merge only the changes between 2.2 and 2.4 into 7.0. >>> I don't know what Pharo does but VisualWorksdisplays all changes between >>> 2.4 and 7.0 while giving additional information about the last common >>> version which is determined to be 2.0 because previous merges are not >>> considered. >>> This forces me to think about how to merge all changes up to version 2.2 >>> once again. >>> We fixed that in our tools, of course (in VW 7.6), offering an additional >>> merge option which only merges the changes since a user selected common >>> version. >>> >>> Regards >>> Thorsten >>> >>> >>> Thorsten Seitz >>> Development Center Architekturkonzeption und -entwicklung (T.SVD 32) >>> >>> DB Systel GmbH >>> Raum 5C.136, Alfred-Herrhausen-Allee 1, 65760 Eschborn >>> Tel. 069 265-48245, intern 955- >>> _________________________________________________________________________________ >>> >>> Der DB-Konzern im Internet >> http://www.deutschebahn.com >>> >>> Sitz der Gesellschaft: Frankfurt am Main >>> Registergericht: Frankfurt am Main, HRB 78707 >>> USt-IdNr.: DE252204770 >>> Geschäftsführer: Detlef Exner (Vorsitzender), Dr. Burkhard Klanke, Dr. >>> Klaus Rüffler >>> Vorsitzender des Aufsichtsrates: Dr. Rolf Kranüchel >>> >>> >>> |------------> >>> | Von:       | >>> |------------> >>>> --------------------------------------------------------------------------------------------------------------------------------------------------| >>> |Stéphane Ducasse <stephane.ducasse@inria.fr>                                                                                                      | >>>> --------------------------------------------------------------------------------------------------------------------------------------------------| >>> |------------> >>> | An:        | >>> |------------> >>>> --------------------------------------------------------------------------------------------------------------------------------------------------| >>> |ESUG Members <esug-list@lists.esug.org>                                                                                                           | >>>> --------------------------------------------------------------------------------------------------------------------------------------------------| >>> |------------> >>> | Datum:     | >>> |------------> >>>> --------------------------------------------------------------------------------------------------------------------------------------------------| >>> |23.11.2011 16:58                                                                                                                                  | >>>> --------------------------------------------------------------------------------------------------------------------------------------------------| >>> |------------> >>> | Betreff:   | >>> |------------> >>>> --------------------------------------------------------------------------------------------------------------------------------------------------| >>> |[Esug-list] Call for your input on questions you ask yourselves     during merge                                                                    | >>>> --------------------------------------------------------------------------------------------------------------------------------------------------| >>> |------------> >>> | Gesendet   | >>> | von:       | >>> |------------> >>>> --------------------------------------------------------------------------------------------------------------------------------------------------| >>> |esug-list-bounces@lists.esug.org                                                                                                                  | >>>> --------------------------------------------------------------------------------------------------------------------------------------------------| >>> >>> >>> >>> >>> >>> Hi guys >>> >>> We are writing some articles on the work of veronica to support merging >>> activities.  We need your input great smalltalk community :) >>> What are the questions that you ask yourselves when you are/want to merge >>> some code in your project? >>> We would like to do a compilation of questions and also evaluate how the >>> solution of veronica solves them or part of them. >>> >>> Here are some typical questions we asked ourselves. >>>               - What other changes did this change require? >>>               - Can I integrate this change right now? >>>               - How large it is? >>>               - Who made it? >>>               - Is it still valid (when I'm working on an old change)? >>>               - Is this change impacted by a change that happened in another >>> branch of my software? >>> >>> Stef D., Andy K. and Veronica U. >>> >>> >>> _______________________________________________ >>> Esug-list mailing list >>> Esug-list@lists.esug.org >>> http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org >>> >>> >>> >> >> >> _______________________________________________ >> Esug-list mailing list >> Esug-list@lists.esug.org >> http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org > > > _______________________________________________ > Esug-list mailing list > Esug-list@lists.esug.org > http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org > -- Lukas Renggli www.lukas-renggli.ch
MR
Michael Roberts
Sat, Nov 26, 2011 12:45 PM

Hi Stef, I would just add that in a team environment, with some form
of continuous integration, it is useful to know what other proposed
changes are in flight. It could be interesting to reason about both an
individual merge, and any concurrent merging.

cheers,
Mike

Hi Stef, I would just add that in a team environment, with some form of continuous integration, it is useful to know what other proposed changes are in flight. It could be interesting to reason about both an individual merge, and any concurrent merging. cheers, Mike
SD
stephane ducasse
Sat, Nov 26, 2011 4:53 PM

On Nov 26, 2011, at 1:19 PM, Lukas Renggli wrote:

I suspect that the author is the best person to answer all of the
questions that come up so far. Ideally I would like to be able to
directly get into contact with the author in the context of a
particular code change line. I would like to ask him questions and/or
ask/suggest improvements.

Ideally there should be no merging activities at all. Ideally whoever
wants the code in should bring it to a state i can just load and
understand: what does it do? is it tested? is it covered? ... in the
end it all boils down to: is it better?

Nothing is so simple.
There is the automatic part of merging and this is should be ok.
The process can cover: is the code compliant with certain rules, runs the tests….

Now there are cases where you cannot access the author.
And there are cases where you do not want a given features or its implementation.
For example would you accept a code that add , on Object to concatenate objects or something like that.

Now the question is also if you work on code you wrote or somebody else and that you do not really know.
From that perspectives I want tools that will help me asking queries as:
- is the change I'm looking composed of different independent features?
- did the change changed after?
- how many time these methods got changed?
- are the methods invoked in later change?
- can I apply this change directly?
- on what this change rely?
- what is the spread of the changes?
- what is the vocabulary of the changes? (if this is just changing Smalltalk by self environment….kind of).

Stef

Lukas

On 26 November 2011 10:50, Andy Kellens akellens@vub.ac.be wrote:

Hello,

Already many thanks for all the input we received.
As a way to stimulate the discussion a bit, you can find my list of questions below.

  • Who made the changes?
  • How big are the changes? Are they local or do they touch a lot of stuff?
  • Was this method changed a lot of times in the past? Why did it change?
    (I noticed in my projects stuff that keeps on changing most of the times indicates that something is not really right in the design)
  • Is this change part of a whole series of changes? (when someone is working on a feature and commits intermittently, I sometimes prefer to wait loading their changes until I know they are done)
  • Why were the changes made? Bugfix? New feature? Refactoring? Cleanup?
  • Who wrote the original code that was changed? Was any of my old code changed?
  • Is the commit coherent? Do all the changes within the commit belong together or are they unrelated?
    (This also happens often I think: someone fixes a bug and decides to also rename a method or clean something up … very annoying to find out what really happened)
  • Is this change impacted/influenced by a change that happened in another branch of my software?
  • Did this change ever happen before?
  • Is this change reverting the code to an old state?
    (someone changes some code to actually roll back something; would like to know this since it might be by accident)
  • Did the person who made the change also update the tests? Was this necessary?
  • If I just load the change, what are the changes that it breaks my current system?
  • When multiple packages were committed at the same time: do I really need to load all of them now, or can I just load/merge with the version of the package I'm working on?

Kind regards,

Andy

On 26 Nov 2011, at 08:56, Stéphane Ducasse wrote:

tx :)

On Nov 24, 2011, at 1:38 PM, Thorsten.Seitz@deutschebahn.com wrote:

  • When the version to be merged into the trunk is on a branch which I
    already did merge a couple of versions earlier I want to have to see/think
    about only those changes that are new (i.e. the changes between the version
    last merged and the current version to be merged and not all changes
    between the current version to be merged and the trunk version to be merged
    into)

e.g.

1.0 -> 2.0 -> 3.0 -> 4.0 -> 5.0 -> 6.0 -> 7.0  Trunk
\                /            / ?? questions asked here
\              /            /
-> 2.1 -> 2.2 -> 2.3 -> 2.4  Branch

The branch version 2.2 has already been merged into trunk version 5.0 some
time earlier.
Therefore I'd like to merge only the changes between 2.2 and 2.4 into 7.0.
I don't know what Pharo does but VisualWorksdisplays all changes between
2.4 and 7.0 while giving additional information about the last common
version which is determined to be 2.0 because previous merges are not
considered.
This forces me to think about how to merge all changes up to version 2.2
once again.
We fixed that in our tools, of course (in VW 7.6), offering an additional
merge option which only merges the changes since a user selected common
version.

Regards
Thorsten

Thorsten Seitz
Development Center Architekturkonzeption und -entwicklung (T.SVD 32)

DB Systel GmbH
Raum 5C.136, Alfred-Herrhausen-Allee 1, 65760 Eschborn
Tel. 069 265-48245, intern 955-


Der DB-Konzern im Internet >> http://www.deutschebahn.com

Sitz der Gesellschaft: Frankfurt am Main
Registergericht: Frankfurt am Main, HRB 78707
USt-IdNr.: DE252204770
Geschäftsführer: Detlef Exner (Vorsitzender), Dr. Burkhard Klanke, Dr.
Klaus Rüffler
Vorsitzender des Aufsichtsrates: Dr. Rolf Kranüchel

|------------>
| Von:      |
|------------>

--------------------------------------------------------------------------------------------------------------------------------------------------|

|Stéphane Ducasse stephane.ducasse@inria.fr                                                                                                      |

--------------------------------------------------------------------------------------------------------------------------------------------------|

|------------>
| An:        |
|------------>

--------------------------------------------------------------------------------------------------------------------------------------------------|

|ESUG Members esug-list@lists.esug.org                                                                                                          |

--------------------------------------------------------------------------------------------------------------------------------------------------|

|------------>
| Datum:    |
|------------>

--------------------------------------------------------------------------------------------------------------------------------------------------|

|23.11.2011 16:58                                                                                                                                  |

--------------------------------------------------------------------------------------------------------------------------------------------------|

|------------>
| Betreff:  |
|------------>

--------------------------------------------------------------------------------------------------------------------------------------------------|

|[Esug-list] Call for your input on questions you ask yourselves    during merge                                                                    |

--------------------------------------------------------------------------------------------------------------------------------------------------|

|------------>
| Gesendet  |
| von:      |
|------------>

--------------------------------------------------------------------------------------------------------------------------------------------------|

|esug-list-bounces@lists.esug.org                                                                                                                  |

--------------------------------------------------------------------------------------------------------------------------------------------------|

Hi guys

We are writing some articles on the work of veronica to support merging
activities.  We need your input great smalltalk community :)
What are the questions that you ask yourselves when you are/want to merge
some code in your project?
We would like to do a compilation of questions and also evaluate how the
solution of veronica solves them or part of them.

Here are some typical questions we asked ourselves.
- What other changes did this change require?
- Can I integrate this change right now?
- How large it is?
- Who made it?
- Is it still valid (when I'm working on an old change)?
- Is this change impacted by a change that happened in another
branch of my software?

Stef D., Andy K. and Veronica U.


Esug-list mailing list
Esug-list@lists.esug.org
http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org

On Nov 26, 2011, at 1:19 PM, Lukas Renggli wrote: > I suspect that the author is the best person to answer all of the > questions that come up so far. Ideally I would like to be able to > directly get into contact with the author in the context of a > particular code change line. I would like to ask him questions and/or > ask/suggest improvements. > > Ideally there should be no merging activities at all. Ideally whoever > wants the code in should bring it to a state i can just load and > understand: what does it do? is it tested? is it covered? ... in the > end it all boils down to: is it better? Nothing is so simple. There is the automatic part of merging and this is should be ok. The process can cover: is the code compliant with certain rules, runs the tests…. Now there are cases where you cannot access the author. And there are cases where you do not want a given features or its implementation. For example would you accept a code that add , on Object to concatenate objects or something like that. Now the question is also if you work on code you wrote or somebody else and that you do not really know. From that perspectives I want tools that will help me asking queries as: - is the change I'm looking composed of different independent features? - did the change changed after? - how many time these methods got changed? - are the methods invoked in later change? - can I apply this change directly? - on what this change rely? - what is the spread of the changes? - what is the vocabulary of the changes? (if this is just changing Smalltalk by self environment….kind of). Stef > > Lukas > > > On 26 November 2011 10:50, Andy Kellens <akellens@vub.ac.be> wrote: >> Hello, >> >> Already many thanks for all the input we received. >> As a way to stimulate the discussion a bit, you can find my list of questions below. >> >> * Who made the changes? >> * How big are the changes? Are they local or do they touch a lot of stuff? >> * Was this method changed a lot of times in the past? Why did it change? >> (I noticed in my projects stuff that keeps on changing most of the times indicates that something is not really right in the design) >> * Is this change part of a whole series of changes? (when someone is working on a feature and commits intermittently, I sometimes prefer to wait loading their changes until I know they are done) >> * Why were the changes made? Bugfix? New feature? Refactoring? Cleanup? >> * Who wrote the original code that was changed? Was any of my old code changed? >> * Is the commit coherent? Do all the changes within the commit belong together or are they unrelated? >> (This also happens often I think: someone fixes a bug and decides to also rename a method or clean something up … very annoying to find out what really happened) >> * Is this change impacted/influenced by a change that happened in another branch of my software? >> * Did this change ever happen before? >> * Is this change reverting the code to an old state? >> (someone changes some code to actually roll back something; would like to know this since it might be by accident) >> * Did the person who made the change also update the tests? Was this necessary? >> * If I just load the change, what are the changes that it breaks my current system? >> * When multiple packages were committed at the same time: do I really need to load all of them now, or can I just load/merge with the version of the package I'm working on? >> >> Kind regards, >> >> Andy >> >> On 26 Nov 2011, at 08:56, Stéphane Ducasse wrote: >> >>> tx :) >>> >>> On Nov 24, 2011, at 1:38 PM, Thorsten.Seitz@deutschebahn.com wrote: >>> >>>> - When the version to be merged into the trunk is on a branch which I >>>> already did merge a couple of versions earlier I want to have to see/think >>>> about only those changes that are new (i.e. the changes between the version >>>> last merged and the current version to be merged and not all changes >>>> between the current version to be merged and the trunk version to be merged >>>> into) >>>> >>>> e.g. >>>> >>>> 1.0 -> 2.0 -> 3.0 -> 4.0 -> 5.0 -> 6.0 -> 7.0 Trunk >>>> \ / / ?? questions asked here >>>> \ / / >>>> -> 2.1 -> 2.2 -> 2.3 -> 2.4 Branch >>>> >>>> The branch version 2.2 has already been merged into trunk version 5.0 some >>>> time earlier. >>>> Therefore I'd like to merge only the changes between 2.2 and 2.4 into 7.0. >>>> I don't know what Pharo does but VisualWorksdisplays all changes between >>>> 2.4 and 7.0 while giving additional information about the last common >>>> version which is determined to be 2.0 because previous merges are not >>>> considered. >>>> This forces me to think about how to merge all changes up to version 2.2 >>>> once again. >>>> We fixed that in our tools, of course (in VW 7.6), offering an additional >>>> merge option which only merges the changes since a user selected common >>>> version. >>>> >>>> Regards >>>> Thorsten >>>> >>>> >>>> Thorsten Seitz >>>> Development Center Architekturkonzeption und -entwicklung (T.SVD 32) >>>> >>>> DB Systel GmbH >>>> Raum 5C.136, Alfred-Herrhausen-Allee 1, 65760 Eschborn >>>> Tel. 069 265-48245, intern 955- >>>> _________________________________________________________________________________ >>>> >>>> Der DB-Konzern im Internet >> http://www.deutschebahn.com >>>> >>>> Sitz der Gesellschaft: Frankfurt am Main >>>> Registergericht: Frankfurt am Main, HRB 78707 >>>> USt-IdNr.: DE252204770 >>>> Geschäftsführer: Detlef Exner (Vorsitzender), Dr. Burkhard Klanke, Dr. >>>> Klaus Rüffler >>>> Vorsitzender des Aufsichtsrates: Dr. Rolf Kranüchel >>>> >>>> >>>> |------------> >>>> | Von: | >>>> |------------> >>>>> --------------------------------------------------------------------------------------------------------------------------------------------------| >>>> |Stéphane Ducasse <stephane.ducasse@inria.fr> | >>>>> --------------------------------------------------------------------------------------------------------------------------------------------------| >>>> |------------> >>>> | An: | >>>> |------------> >>>>> --------------------------------------------------------------------------------------------------------------------------------------------------| >>>> |ESUG Members <esug-list@lists.esug.org> | >>>>> --------------------------------------------------------------------------------------------------------------------------------------------------| >>>> |------------> >>>> | Datum: | >>>> |------------> >>>>> --------------------------------------------------------------------------------------------------------------------------------------------------| >>>> |23.11.2011 16:58 | >>>>> --------------------------------------------------------------------------------------------------------------------------------------------------| >>>> |------------> >>>> | Betreff: | >>>> |------------> >>>>> --------------------------------------------------------------------------------------------------------------------------------------------------| >>>> |[Esug-list] Call for your input on questions you ask yourselves during merge | >>>>> --------------------------------------------------------------------------------------------------------------------------------------------------| >>>> |------------> >>>> | Gesendet | >>>> | von: | >>>> |------------> >>>>> --------------------------------------------------------------------------------------------------------------------------------------------------| >>>> |esug-list-bounces@lists.esug.org | >>>>> --------------------------------------------------------------------------------------------------------------------------------------------------| >>>> >>>> >>>> >>>> >>>> >>>> Hi guys >>>> >>>> We are writing some articles on the work of veronica to support merging >>>> activities. We need your input great smalltalk community :) >>>> What are the questions that you ask yourselves when you are/want to merge >>>> some code in your project? >>>> We would like to do a compilation of questions and also evaluate how the >>>> solution of veronica solves them or part of them. >>>> >>>> Here are some typical questions we asked ourselves. >>>> - What other changes did this change require? >>>> - Can I integrate this change right now? >>>> - How large it is? >>>> - Who made it? >>>> - Is it still valid (when I'm working on an old change)? >>>> - Is this change impacted by a change that happened in another >>>> branch of my software? >>>> >>>> Stef D., Andy K. and Veronica U. >>>> >>>> >>>> _______________________________________________ >>>> Esug-list mailing list >>>> Esug-list@lists.esug.org >>>> http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org >>>> >>>> >>>> >>> >>> >>> _______________________________________________ >>> Esug-list mailing list >>> Esug-list@lists.esug.org >>> http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org >> >> >> _______________________________________________ >> Esug-list mailing list >> Esug-list@lists.esug.org >> http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org >> > > > > -- > Lukas Renggli > www.lukas-renggli.ch > > _______________________________________________ > Esug-list mailing list > Esug-list@lists.esug.org > http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org