SourceCodeManagerUtilitiesForContainerBasedManagers.st
changeset 3537 ee6b24d5f0f8
parent 3507 ef4dad1a2b32
child 3573 af8f051e0a8b
equal deleted inserted replaced
3536:cb8679184d3b 3537:ee6b24d5f0f8
   796         self checkinBuildSupportFilesForPackage:packageToCheckIn withInfo:(originalCheckinInfo ? checkinInfo).
   796         self checkinBuildSupportFilesForPackage:packageToCheckIn withInfo:(originalCheckinInfo ? checkinInfo).
   797     ].
   797     ].
   798 
   798 
   799     "Created: / 13-10-2011 / 11:15:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
   799     "Created: / 13-10-2011 / 11:15:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
   800     "Modified: / 04-09-2012 / 14:05:36 / cg"
   800     "Modified: / 04-09-2012 / 14:05:36 / cg"
       
   801 !
       
   802 
       
   803 comparePackages:packages askForRevision:askForRevision
       
   804     "Compares code of given packages (loaded in the image) against a specific revision
       
   805      and opens a diff browser on differences.
       
   806      
       
   807      If `askForRevision` is true, then user is asked to specify to which revision to
       
   808      update. If `askForRevision` is false, then packages are updated to a 'newest'
       
   809      revision.
       
   810      
       
   811      NOTE: Definition of `newest` revision may vary. For SCMs which allows for multiple
       
   812      heads, it is not clear which one it is. In that case, even if `askForRevision` is
       
   813      false, this method may result in user interation, asking user to select which of the
       
   814      newest she wants."
       
   815 
       
   816     |dateFormat string dateOrNil symbolicName|
       
   817 
       
   818     dateFormat := UserPreferences current dateInputFormat.
       
   819     string := Dialog
       
   820                 request:(resources
       
   821                         string:'Compare with version from date (%1) or tag (any other format):'
       
   822                         with:dateFormat)
       
   823                 initialAnswer:(Date today printStringFormat:dateFormat).
       
   824 
       
   825     string isEmptyOrNil ifTrue:[^ self].
       
   826     dateOrNil := Date readFrom:string printFormat:dateFormat onError:nil.
       
   827     dateOrNil isNil ifTrue:[
       
   828         symbolicName := string
       
   829     ].
       
   830 
       
   831     packages value do:[:eachProject |
       
   832         dateOrNil notNil ifTrue:[
       
   833             self compareProject:eachProject withRepositoryVersionFrom:dateOrNil
       
   834         ] ifFalse:[
       
   835             self compareProject:eachProject withRepositoryVersionTaggedAs:symbolicName
       
   836         ]
       
   837     ].
       
   838 
       
   839 
       
   840     "Created: / 04-04-2014 / 15:29:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
   801 ! !
   841 ! !
   802 
   842 
   803 !SourceCodeManagerUtilitiesForContainerBasedManagers class methodsFor:'documentation'!
   843 !SourceCodeManagerUtilitiesForContainerBasedManagers class methodsFor:'documentation'!
   804 
   844 
   805 version
   845 version
   806     ^ '$Header: /cvs/stx/stx/libbasic3/SourceCodeManagerUtilitiesForContainerBasedManagers.st,v 1.19 2014-02-19 20:53:42 cg Exp $'
   846     ^ '$Header: /cvs/stx/stx/libbasic3/SourceCodeManagerUtilitiesForContainerBasedManagers.st,v 1.20 2014-04-04 20:20:01 vrany Exp $'
   807 !
   847 !
   808 
   848 
   809 version_CVS
   849 version_CVS
   810     ^ '$Header: /cvs/stx/stx/libbasic3/SourceCodeManagerUtilitiesForContainerBasedManagers.st,v 1.19 2014-02-19 20:53:42 cg Exp $'
   850     ^ '$Header: /cvs/stx/stx/libbasic3/SourceCodeManagerUtilitiesForContainerBasedManagers.st,v 1.20 2014-04-04 20:20:01 vrany Exp $'
   811 ! !
   851 ! !
   812 
   852