Here are the steps I always follow before checking in the code,
Get the latest from svn
Merge conflicted files
Build
Run my tests
Check-in
In spite of all this, there is still a chance that I might break the build, if there are any local changes that I might have missed checking in. I know that having a Continuous Integration server would solve this once and for all. But it's a new project and CI server has not been setup yet.
Here are some of the useful articles I read on the topic.
Any advice on how to absolutely make sure that I don't break the build?
There isn't such mechanism in Maven. It's your business what you're doing after build and what you check-in. Even with CI you can do anything you want, you just know quite early you broke a build. It doesn't prevent you from doing wrong, it just provide quick feedback. However, when you try to do release with Maven (using maven-release-plugin
) it will then check if there are some uncommited changes, so you can be sure that your release-related build is OK and this is really important. But with just a regular build it's not so critical, in my opinion.