[ 
https://issues.apache.org/jira/browse/SUREFIRE-2140?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Michael Osipov updated SUREFIRE-2140:
-------------------------------------
    Description: 
While trying to release Surefire on Windows today Git failed with: fatal: CRLF 
would be replaced by LF in pom.xml

It turns out that the {{.gitattributes}} is:
{noformat}
# Auto detect text files and perform LF normalization
* text eol=lf

*.xml    text diff=xml
*.java   text diff=java
*.html   text diff=html
*.vm     text
*.fml    text
*.md     text
*.css    text
*.js     text
*.sql    text
*.png    binary
{noformat}

I don't know why LF is enforced, but most Git clients will perform {{autocrlf}} 
and Maven Release Plugin will use platform line separator. Therefore, it will 
has CRLF after transformation and Git fails, thus release fails. I had to 
perform in Git Bash:
{noformat}
git status | grep modified: | cut -c13-  | xargs -I^ dos2unix ^
{noformat}

through several stages to continue with the release.

Expectation: Either Git will be configured to use LS auto or Maven Release 
Plugin will force LF only.

  was:
While trying to release Surefire on Windows today Git failed with: fatal: CRLF 
would be replaced by LF in pom.xml

It turns out that the {{.gitattributes}} is:
{noformat}
# Auto detect text files and perform LF normalization
* text eol=lf

*.xml    text diff=xml
*.java   text diff=java
*.html   text diff=html
*.vm     text
*.fml    text
*.md     text
*.css    text
*.js     text
*.sql    text
*.png    binary
{noformat}

I don't know why LF is enforced, but most Git clients will perform {{autocrlf}} 
and Maven Release Plugin will use platform line separator. Therefore, it will 
has CRLF after transformation and Git fails, thus release fails. I had to 
perform in Git Bash:
{noformat}
git status | grep modified: | cut -c13-  | xargs -I^ dos2unix ^
{noformat}

through several stages to continue with the release.


> Cannot release Surefire on Windows
> ----------------------------------
>
>                 Key: SUREFIRE-2140
>                 URL: https://issues.apache.org/jira/browse/SUREFIRE-2140
>             Project: Maven Surefire
>          Issue Type: Bug
>    Affects Versions: 3.0.0-M7
>            Reporter: Michael Osipov
>            Priority: Major
>
> While trying to release Surefire on Windows today Git failed with: fatal: 
> CRLF would be replaced by LF in pom.xml
> It turns out that the {{.gitattributes}} is:
> {noformat}
> # Auto detect text files and perform LF normalization
> * text eol=lf
> *.xml    text diff=xml
> *.java   text diff=java
> *.html   text diff=html
> *.vm     text
> *.fml    text
> *.md     text
> *.css    text
> *.js     text
> *.sql    text
> *.png    binary
> {noformat}
> I don't know why LF is enforced, but most Git clients will perform 
> {{autocrlf}} and Maven Release Plugin will use platform line separator. 
> Therefore, it will has CRLF after transformation and Git fails, thus release 
> fails. I had to perform in Git Bash:
> {noformat}
> git status | grep modified: | cut -c13-  | xargs -I^ dos2unix ^
> {noformat}
> through several stages to continue with the release.
> Expectation: Either Git will be configured to use LS auto or Maven Release 
> Plugin will force LF only.



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

Reply via email to