class: middle, center ![PR](public/img/PR.png) --- class: middle, center ## hi my name is @ag_dubs hi ![me](public/img/npm-me.jpg) --- class: middle, center ![sinatra code](public/img/sinatra_core.png) --- class: middle, center ## from # OPEN ## to # MERGE --- class: middle, left - ## are you legally situated to contribute to this project? - ## is your contribution able to be merged with master? - ## does your contribution break functionality or style? - ## is your contribution something the project wants? --- class: middle, left #### Cast of Characters - ## bots - ## CLA - ## CI - ## maintainers/contributors --- class: middle, center #### are you legally situated to contribute to this project? # CLAs: Contributor License Agreement --- class: middle, center ![CLA bot](public/img/cla-bot.png) --- class: middle, center #### is your contribution able to be merged with master? ![rebase](public/img/rebase.png) --- class: middle, center #### does your contribution break functionality or style? ![break](public/img/break.png) --- class: middle, center # Continuous Integration ![travis](public/img/travis_betterluck.png) --- class: middle, center #.travis.yml ![travis yaml](public/img/travis-yml.png) --- class: middle, left - ## jshint - ## jscs - ## unit tests --- class: middle, center #### is your contribution something the project wants # WIP: Work in Progress --- class: middle, center ![wip PR](public/img/wip.png) --- class: middle, center ![issue first](public/img/issuefirst.png) --- class: middle, center # anyone can comment ![troll](public/img/Troll.png) --- class: middle, center # maintainers ![shepard](public/img/shepard.jpg) --- class: middle, center # code review ![review](public/img/botreview.png) --- class: middle, center ![inline](public/img/inline.png) --- class: middle, center # this can take a long time --- class: middle, left #### if you added functionality... - ## is it documented? - ## is it tested? --- class: middle, center # sometimes, your PR gets closed ![sad charlie brown](public/img/charlie.jpg) --- class: middle, center # and that is totally OK ![more than one night](public/img/more.gif) --- class: middle, center # ZOMG IT'S TIME TO MERGE --- class: middle, center # you want me to what? ![squash](public/img/squash.jpg) --- class: middle, center # commit histories matter --- class: middle, center ![how to squash](public/img/howtosquash.png) --- class: middle, center ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png) ![merge](public/img/merge.png)