title: SVN atomic commit how-to
body: <p>Where I am: Linux command line</p>
  
  <p>The problem I have now:</p>
  
  <p>Sometimes I couldn't make atomic commits (consisting all the modifications required for one particular ticket/task), because we have some files in the repository, which contents vary at local development environments.</p>
  
  <p>For example: <code>database.xml</code> (dbname, username, password, etc.). I modify this file in my local environment, and every time I need to make a commit/checkin I have manually list all the required files/folders for the commit (excluding this locally modified files).</p>
  
  <p>Maybe it is a wrong design decision and <code>database.xml</code> has to be deleted from the repository and changed for <code>database.xml.template</code> (stored in SVN), so this file won't be included to commit until you manually execute <code>svn add</code> for it? Maybe it is wrong approach - to store all this environment dependent information in the repository - in that case we can break everything by commiting a modified configuration, for example.. </p>
  
  <p>As I understand it, <code>svn:ignore</code> property couldn't help in this situation, because it can be used only for files which isn't stored in the repository..</p>
  
  <p>How can this problem be solved?</p>
  
  <p>P.S.: I'm using Ubuntu and mostly pure command line for SVN.</p>