as how you run them! — They verify that your shit isn't broken — They are always faster than alt-tabbing to a browser and trying something yourself — They ensure someone later won't break something you've built
merge? — Are you using a standard workflow, i.e. GitHub- style feature branches? — Try to break up features and keep those branches small — Rebase frequently to make the merge easier
potential pain. — Automate everything - clicking a button or running a script is good, deploying from master automatically is better — Don't reinvent the wheel, use existing tools
even! — Rolling back should be just as easy if not easier than deploying — Troubleshooting live code that's broken is a colossal waste of time if you know a rollback will fix it
reviews can: — Take too long to get done — Be delayed after incorporating feedback — Depend on people who have limited time — The flip side - pay it forward/back and review as much as you can