At it's most basic level, you create a class to represent your table, a context class (derived from DbContext) and then execute commands in the Package Manager Console to create migrations/scripts and/or update the database schema directly (think of it as rake db migrate for EF Code First).
public class User
{
public string Username {get;set;}
public string Password {get;set;}
}
public class DatabaseContext : DbContext
{
public DbSet<User> Users {get;set;}
}
Tools -> Library Package Manager -> Package Manager Console
Once the console window is open, make sure the project with your entity/context is selected in the "Default Project" dropdown at the top of the window and execute the following commands:
Add-Migration "Description of your migration"
This will create a migration class for you that represents your changes to the database since the last migration. If this is the first one (given that you're starting from an empty database), it will also generate a system table called "__MigrationHistory" which is used to track which migrations have already been applied to the database.
Update-Database -script
Executing Update-Database with the -script flag will generate a SQL script you can save/check in to source control if needed. If you'd prefer just to update the database itself without the script, just leave off the -script tag.
Be sure you have a connection string in web.config named the same thing as your context class ("DatabaseContext" in this example). This can point to your existing database but it will only manage/track changes to entities which are defined in your context class. I've found sometimes it's necessary to explicitly define the context when using the Add-Migration and Update-Database commands like so:
Add-Migration "Description of your migration" -connectionstringname "DatabaseContext"