jenkinsci / jenkinsci/subversion-plugin

[JENKINS-4289] Hudson subversion checkout causes files to appear modified if they have no revision history

Open
#601 18 comments 0 reactions 0 assignees View on GitHub
component:subversion-plugin imported-jira-issue priority:minor resolution:unresolved
Dominant language
Java
Stars
131
Forks
275
Avg merge
12h 4m
Merged PRs (30d)
6

Description

Hudson subversion checkout causes files to appear modified if they have no

revision history

I found this issue when experimenting with the Hudson Maven Release Plugin. mvn

release:prepare would always fail indicating that changes were detected in the

working copy of the source. This should never happen since "Use update" is

unchecked for the project - a clean copy should be checked out. Verified this

by disabling "Source Code Management" for the project and using "M2 Extra Steps

Plugin" to execute a command line checkout of the code before the build. No

differences detected after this (but other problems using release plugin as a

side effect of the command line checkout - so not a good workaround).

When investigating, I determined that this was happening with all of my Hudson

builds, but I only detected it due to the maven release failing.

It appears that something is awry during change log generation after checkout if

a file has no revision history but contains an "$Id:$" keyword expansion.

Command line svn status will report there are local changes to any file that is

a new file with no revision history (newly checked in files) if run in the

Hudson workspace for that project.

A svn diff on one of the files results in the following - notice the discrepancy

of the keyword expansion "$Id:$":

Index: RSAFileEncryptionUtil.java

===================================================================

— RSAFileEncryptionUtil.java (revision 162)

+++ RSAFileEncryptionUtil.java (working copy)

@@ -31,7 +31,7 @@



  • A tool for securely reading and writing file content using RSA wrapped AES

    encryption

    *

  • @​author BMS



  • * @​version File/Rev/Date/Author of last commit: $Id:$

    + * @​version File/Rev/Date/Author of last commit: $Id$

    */

    @​SuppressWarnings(
    {"OverloadedMethodsWithSameNumberOfParameters"}

    )

    public class RSAFileEncryptionUtil


---
Originally reported by bsantarelli, imported from: Hudson subversion checkout causes files to appear modified if they have no revision history


  • status: Open
  • priority: Minor
  • component(s): subversion-plugin
  • resolution: Unresolved
  • votes: 2
  • watchers: 6
  • imported: 20251212-090250

Raw content of original issue

Hudson subversion checkout causes files to appear modified if they have no
revision history

I found this issue when experimenting with the Hudson Maven Release Plugin. mvn
release:prepare would always fail indicating that changes were detected in the
working copy of the source. This should never happen since "Use update" is
unchecked for the project - a clean copy should be checked out. Verified this
by disabling "Source Code Management" for the project and using "M2 Extra Steps
Plugin" to execute a command line checkout of the code before the build. No
differences detected after this (but other problems using release plugin as a
side effect of the command line checkout - so not a good workaround).

When investigating, I determined that this was happening with all of my Hudson
builds, but I only detected it due to the maven release failing.

It appears that something is awry during change log generation after checkout if
a file has no revision history but contains an "$Id:$" keyword expansion.
Command line svn status will report there are local changes to any file that is
a new file with no revision history (newly checked in files) if run in the
Hudson workspace for that project.

A svn diff on one of the files results in the following - notice the discrepancy
of the keyword expansion "$Id:$":

Index: RSAFileEncryptionUtil.java
===================================================================
— RSAFileEncryptionUtil.java (revision 162)
+++ RSAFileEncryptionUtil.java (working copy)
@@ -31,7 +31,7 @@



  • A tool for securely reading and writing file content using RSA wrapped AES
    encryption
    *

  • @author BMS



  • * @version File/Rev/Date/Author of last commit: $Id:$
    + * @version File/Rev/Date/Author of last commit: $Id$
    */
    @SuppressWarnings(
    {"OverloadedMethodsWithSameNumberOfParameters"}

    )
    public class RSAFileEncryptionUtil



  • environment: Platform: All, OS: All

1 attachment

- [config](https://issues.jenkins.io/secure/attachment/18773/config)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.