svn diff when files are marked with "history scheduled with commit"

11,268

Solution 1

When version 1.7 is released, svn diff will have a --show-copies-as-adds switch for that purpose. That's a good indication that versions through 1.6 don't have that ability.

Solution 2

The + character in the output of svn status indicates that the file has "History scheduled with commit". This means that the file is not actually a new file, but actually a direct descendant of some other file in the Subversion repository.

This means that there should be no output in svn diff, since the file has not actually changed. If you were to make some local modifications to the file, they would appear in the svn diff output.

Share:
11,268
James A Wilson
Author by

James A Wilson

I also wrote this toy: http://cruisesaver.sourceforge.net/.

Updated on June 16, 2022

Comments

  • James A Wilson
    James A Wilson almost 2 years

    I have changes on a branch that I have merged to trunk in my working directory. Svn stat shows the correct list of changed files. However, the "svn stat" output includes a "+" in the history scheduled for commit on each file added new to the branch.

    A + src\main\java\com....java

    When I run "svn diff", the added files that have the "+" are not included in the patch output.

    This seems broken. If a file is marked as added, then it's entire contents should be in the diff output. I tried passing the --notice-ancestry. There was no change to the diff output. The closest I can find to the same problem is these comments regarding copied/moved files

    Does someone know how to get SVN to includes these files in the diff output?

    I just tried an external diff program as suggested by this questions answer, but it didn't work for me.