title: FluentMigrator - how does it know which migration to execute
body: <p>How does FluentMigrator know what migrations to execute / migrate when you start up the application?</p>
  <p>Example: I got two migrations already performed (1 and 2). Now I create a third migration and give it an id of <code>3</code>. When I launch my application, FluentMigrator will execute the migrations, but how does it know to skip the first two?</p>
  <pre class="lang-cs prettyprint-override"><code>using FluentMigrator;
  
  namespace test
  {
      [Migration(3)]
      public class AddLogTable : Migration
      {
          public override void Up()
          {
              Create.Table(&quot;Log&quot;)
                  .WithColumn(&quot;Id&quot;).AsInt64().PrimaryKey().Identity()
                  .WithColumn(&quot;Text&quot;).AsString();
          }
  
          public override void Down()
          {
              Delete.Table(&quot;Log&quot;);
          }
      }
  }
  </code></pre>