[ 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)