[ 
https://issues.apache.org/jira/browse/SCM-1029?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17950904#comment-17950904
 ] 

ASF GitHub Bot commented on SCM-1029:
-------------------------------------

michael-o commented on PR #238:
URL: https://github.com/apache/maven-scm/pull/238#issuecomment-2871923247

   > > > @michael-o Merged PR should have a label and milestone ....
   > > > By default GitHub action - PR Automation do it .... but here was not 
executed ... probably of merge by commit no GitHub UI
   > > 
   > > 
   > > I don't use the Github UI since it uses the wrong email address for me 
instead of the apache.org.
   > 
   > Did you check your github configuration: 
https://docs.github.com/en/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/setting-your-commit-email-address#setting-your-commit-email-address-on-github
   
   I have multiple addresses for multiple purposes. The Apache isn't and won't 
be my primary one. Therefore, the GItHub UI is unsuitable for the task.
   
   > Maybe we should add or update something at: 
https://maven.apache.org/developers/conventions/github.html
   
   Maybe, but won't solve the problem from above.




> JGit performing empty commit on CheckIn command if includes or excludes 
> fileset is defined but no files changed in it
> ---------------------------------------------------------------------------------------------------------------------
>
>                 Key: SCM-1029
>                 URL: https://issues.apache.org/jira/browse/SCM-1029
>             Project: Maven SCM (Moved to GitHub Issues)
>          Issue Type: Bug
>          Components: maven-scm-provider-jgit
>    Affects Versions: 2.1.0
>            Reporter: Markus Hoffrogge
>            Assignee: Michael Osipov
>            Priority: Major
>             Fix For: 2.2.0
>
>   Original Estimate: 4h
>  Remaining Estimate: 4h
>
> *Issue*
> If includes and/or excludes config is defined, then JGit checkIn is 
> performing empty commits if no changes are applied to the effective fileset 
> content BUT other files are changed that are NOT within the effective scope 
> of the includes or excludes related fileset.
>  
> *Root cause*
> Method *JGitCheckInCommand.executeCheckInCommand* is using 
> git.status().call().{*}hasUncommittedChanges(){*} if there is nothing to 
> commit returned by *JGitUtils.addAllFiles(git, fileSet).*
> Since git.status().call().{*}hasUncommittedChanges(){*} returns the state of 
> any file within the working tree of the repo, this will set *doCommit* true 
> even in case there is no file changed or added in scope of the includes / 
> excludes effective fileset.
>  
> *Solution*
> Use OR condition of:
>   - status.getAdded().size() > 0
>   - status.getChanged().size() > 0
>   - status.getRemoved() > 0
> instead of status.hasUncommittedChanges() if an includes / excludes FileSet 
> is specified.
> [PR #238|https://github.com/apache/maven-scm/pull/238]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to