Poetry of Programming

The ‘svn merge’ command compares two trees, generates a patch, then applies that patch to a working copy. Yes, you have complete freedom to compare any two trees, and thereby generate any patch you want. But that does *not* mean that ‘svn merge’ always will do what you want. It’s *your* responsbility to make sure that the patch being produced makes sense, and cleanly applies to your working copy. Skipped ‘src’ Skipped ‘src’ Skipped ‘src\au’ Skipped ‘src\au\com’ Skipped ‘src\au\com\forward’ Skipped ‘src\au\com\forward\codeSections’ A src\au\com\forward\codeSections\DesignNotes.txt A src\au\com\forward\codeSections\CodeSections.java Skipped ‘src\au\com\forward\codeSections\testFiles’ A src\au\com\forward\codeSections\testFiles\testin.cs Skipped ‘docs’ Skipped ‘docs’ A docs\htmldoc.exe

See those skipped messages? That indicates driver error. The merge command is trying to add and remove certain directories because they’re not related to each other at all. Please read this section of chapter 4, regarding ancestry: