first vs commit