You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Olivier Lamy (JIRA)" <ji...@codehaus.org> on 2011/12/05 22:27:39 UTC
[jira] Commented: (SCM-649) Enhance SCM changelog model to hold
more data about changes
[ https://jira.codehaus.org/browse/SCM-649?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=284962#comment-284962 ]
Olivier Lamy commented on SCM-649:
----------------------------------
very nice patch!
As a huge peace of code, could you send a cla to ASF ?
See http://www.apache.org/licenses/ section "Contributor License Agreements".
Let me know when it's done.
> Enhance SCM changelog model to hold more data about changes
> -----------------------------------------------------------
>
> Key: SCM-649
> URL: https://jira.codehaus.org/browse/SCM-649
> Project: Maven SCM
> Issue Type: Improvement
> Components: maven-scm-api, maven-scm-provider-git, maven-scm-provider-svn
> Affects Versions: 1.6
> Reporter: Petr Kozelka
> Assignee: Olivier Lamy
> Fix For: 1.7
>
> Attachments: scm-richmodel-git.patch, scm-richmodel-model.patch, scm-richmodel-svn.patch
>
>
> Hello,
> I would like to get more information from SCM changelog command, and attached patches contain my proposal doing some part of this.
> There are separate patches for model and for GIT and SVN implementations, I hope it makes them easier to review.
> New functionality is mostly covered with tests.
> +Summary of proposed enhancements:+
> ChangeFile.java:
> - added: ScmFileStatus *action*
> - added: String *originalName*
> - added: String *originalRevision*
> - they all included in toString()
> ScmFileStatus.java:
> - added: *RENAMED* = new ScmFileStatus( "renamed" );
> - added: *COPIED* = new ScmFileStatus( "copied" );
> ChangeSet.java:
> - added: String *parentRevision*
> - added: Set<String> *mergedRevisions*
> - both added to toString()
> - both added to toXML() + those from ChangeFile - all values stored in elements not attributes just like the others
> GIT implementation notes (GitChangeLogConsumer):
> - besides parsing the "whatchanged" command, now the consumer can handle also many options of the "log" command and harvest most of its provided info.
> In particular, the output of "git log --format=raw -C --raw --no-abbrev" can be parsed.
> - there is a potential to simply enable parsing for some more information like committer, committerDate and treeHash, which I didn't yet (as GIT-only stuff it may require separate discussion)
> SVN implementation notes (SvnChangeLogConsumer):
> - svn action "A" (Add) translates to "added" or "copied" depending of presence of originalFile
> - svn action "M" (Modified) always translates to "modified" no matter if there is an originalFile; _any opinions about this ?_
> - svn action "R" (Replace) translates to "updated" which IMHO has sufficiently close semantic
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira