Why do I need to specify a changeLogFile when generating a change log?

What is the purpose of specifying a changeLogFile when generating a change log file (using the command  generateChangeLog)? As I understand you can use this command to get a baseline for an existing database and at that moment I don’t have a changeLogFile.

The changeLog file you specify is where the generated changelog will be written to.


Ok, now I see. Though I’m not sure if this behavior is so good. For some commands this file is used for reading but in this case you write output to it. If you’re not cautious you may end up overwriting an existing changelog used for other purposes. The reason I asked was because I thought that this kind of output was written to standard out.

If you specify an existing changelog, it will actually append to the changelog rather than overwriting it.  The idea is that then we can support workflows where you make a change to one database (only really recommended with a hibernate mapping ‘database’) and have the changes appended to your running changelog.  If we went with stdout it wouldn’t be able to work as well with this method.