43
The Best Commit Messages of 2015 or (The Unexpected Virtue of Using Git) University of Chicago – CMSC 23300 Networks and Distributed Systems

UChicago CMSC 23300 - The Best Commit Messages of 2015

Embed Size (px)

Citation preview

Page 1: UChicago CMSC 23300 - The Best Commit Messages of 2015

The Best Commit Messages of 2015or

(The Unexpected Virtue of Using Git)

University of Chicago – CMSC 23300 Networks and Distributed Systems

Page 2: UChicago CMSC 23300 - The Best Commit Messages of 2015

Before we begin, let's take a look back at the...

Page 3: UChicago CMSC 23300 - The Best Commit Messages of 2015

Top Ten Commit Messages of 2014

Page 4: UChicago CMSC 23300 - The Best Commit Messages of 2015

10. Borja is keeping me from doing my chinese homework

9. a very terrible disaster has been avoided here

8. holy hell, idk how this worked but it's working omg i might crie it's so beautiful

7. i love the smell of segfaults in the morning

6. have to debug in really weird ways because I stubbornly refuse to use emacs through ssh

Page 5: UChicago CMSC 23300 - The Best Commit Messages of 2015

5. well, nothing works, all tests fail, and i have no idea how to implement this RFC, but it's not immidiately segfaulting, so, i've got that going for me

4. I STILL HAVEN'T DONE MY CHINESE HOMEWORK :(

3. oh my god, it's spelled LUSERS, not LUSER

2. last push of the night jk can't stop

Page 6: UChicago CMSC 23300 - The Best Commit Messages of 2015

1. worked an additional day, finished everything but send function is clearly broken so test all fail. this is hell on earth. I would pray to God, but I don't know how to correctly send messages.

Page 7: UChicago CMSC 23300 - The Best Commit Messages of 2015

And give an honorable mention to...

Page 8: UChicago CMSC 23300 - The Best Commit Messages of 2015

The Best Branch Names of 2015watabcdpoop

ughhhhhhaaaahhhhhh

stupid-merge-branchcleanuptimeyay

crappy-fix-to-motd-that-might-workfixing-peek/read-life-falls-apart

idunf kedup

gottadeletebranchesjankp1bsaturday

-does-actual-work-shenanigans-f ks-around

structuralism-at-its-beststructuralism-at-its-finest

structuralism-hotfixrto-rto-wherefore-art-thou-rto

Page 9: UChicago CMSC 23300 - The Best Commit Messages of 2015

The Best Commit Messages of 2015

Page 10: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep “^[^a-z]\+$” commits.txtSTRUCTS.....???HEYAHHHYOOOO\1\1\1[1[1[1[1[1[1[1Z1Z1<= != <

Page 11: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep “^[^a-z]\+$” commits.txtWHY WON'T LUSERS WORK WTFI HATE SEGFAULTSI HATE MODESTRCODE IS NOT READYSHUT UP PYTHONIT WAS THE LOOOOOOOOOCKS

Page 12: UChicago CMSC 23300 - The Best Commit Messages of 2015
Page 13: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep “^[^a-z]\+$” commits.txtPOINTSSSSSSO MANY POINTSSSSSSSSSSSSSSSSSSSSSSSSSSSSS. TAKE THAT CRAB!YO 80% ARENT WE COOLGOT DAT 5091%, OMG, DROP_PACKET WORKSSSSLUSERS WORKS. WHAT. IS. UP. 10/10

Page 14: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep “^[^a-z]\+$” commits.txtWORKING YISSSSSSSTHAT WAS SUCH A GIANT BUG OH MY GODTIMEOUTS ARE GONE WOOP WOOP WOOPIM ON FIREI FIXED EVERYTHINGI AM A GOD AMONGST MENFK THE MESSAGE OF THE DAY I HAVE SLAIN THE DRAGON

Page 15: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep “^[^a-z]\+$” commits.txtEVERYTHING COMPILES AND THERE'S NO SEGFAULTS OMG IM SO HAPPY IM CRYING PRAISE RMSOMFG WE'RE PASSING ALL OF THE TESTS YES YES YES YES YESY SEYESY YESYSYE YES THAT -S OPTION IS AMAZING I LOVE YOU

BUG FIXED, MOTHAF KAAAZ

Page 16: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep “[oO]\{3\}” commits.txtwoooowoooo points16 tests pass out of 59 now woooooooinfinite looooooooopwooooooooooooooooooooottttttnooooooooooolast commit of the night yoooooooooooooooo

Page 17: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep \! commits.txtcommit message!Fun with files!!Three way handshake is passing! Wahooo!!bumped up version # to 0.4b. now with full 1b functionality and 7x fewer memory leaks!it compiles! doesn't reply to anything, thoughworking! i think

Page 18: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep "^...$" commits.txt | sort -u

???... 33%~80abcahhbye

finfixgitgodgrrHEYhm:

WHOwhywowwutyayyupzzz

idkkaynewoofughwatwho

$ grep "^....$" commits.txt | sort -u

7/10ahhhAHHHasdfawayblahBlahblehbugsbuh?Done

dsadeditEditeidtfailfinegrrrhelplastlistLIST

saves tsighsimctemptesttodotypowork

moremotdMOTDokayokyaoopsOopspartpingpongRedo

Page 19: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep -i bug commits.txt | wc --lines221

Page 20: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep -i bug commits.txtbugsWill this solve our bug?Bug fixes, eww, there is a spiderINCREDIBLY BUGGY MODEScompiling code with bugALL of the debug messages, hooraylldb sucks. gonna debug over ssh

Page 21: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep -i segfault commits.txtClean up the retransmission functions and OH GOD THE SEGFAULTSinfinite loop, but at least it compiles and there are no segfaultsall the robustness tests are now okay. DID THAT SOLVE THE PROLEM OF THE DISAPPEARING SEGFAULT? ONLY TIME WILL TELLIT SENDS WITHOUT SEGFAULTING

Page 22: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep -i segfault commits.txtsometimes it passes, sometimes it segfaults; tis lifewelp stuff is segfaulting and thingsnothing loops or segfaults but pass the test it doesn'tfixed the segfault ... FOR NOWgood night segfaults

Page 23: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep -i ^why commits.txtwhy don't i sleeeeeepppppwhy the hell did this start workingwhywhy no users in channelwhy did it take me half an hour to find this bracket mismatch? nobody knowswhy no pass :(why does this not workwhy why is it segfaulting when trying to send this PART msg to itself it sux

Page 24: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep -i god commits.txtgodgod help mesubmission p1c ready (please god)I FIXED FIN. I REPEAT, FIN IS FIXED. oh my god i am so tired.added threading, god knows if it workssimultaneous teardown tests now working. maybe there is a god after allthe tcp gods are cruel and unmercifulcommitting my files as an offering to the great gods of GitTHE GODS HAVE SMILED UPON ME TODAY

Page 25: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep -i borja commits.txttabs -> spaces to appease borjafixing git for borjastill getting spurious segfaults on disorderly close. talked to two different TAs, who both said not to worry about it too much, but it is driving me slowly insane. borja has not answered my piazza followup. it seems that god has indeed forsaken us, after all.Made host a global (eat your heart out borja)

Page 26: UChicago CMSC 23300 - The Best Commit Messages of 2015

best. motd. file. ever.

Page 27: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep -i "\<hell\>" commits.txtwell, first of all that was a hell of a merge, secondly now most of the data transfer tests pass sometimes so that's kind of progress.why the hell did this start working

Page 28: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep -i csil commits.txtmoving to csilworking on part. moving to csil machinesome minor changes -- time for csilalso wrote out of order transmission code for establish. In fact all my code is only for the established state. Now debugging commence... not how I like to write code but god could csil be any more sterile.hour eight in CSIL. supplies low. morale lower.still not working but lldb sucks and csil should be open for forever

Page 29: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep -i csil commits.txtDoes not compile, currently commiting and leaving csilworking on names/join. getting kicked out of csilcleaning a little. getting kicked out of csil very soonkicked out of csil so this is all brokenNon-compiling code bc CSIL closingSubmitting non-making code because CSIL closing

Page 30: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep -i hate commits.txti hate gitadded changes to a new file for merge handling - hate giti hate you giti hate git, merge conflict, this version is wrongI hate merges

Page 31: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep -i hate commits.txti hate mergingi hate merging so muchi hate merging so much, trying to fix things upi hate merging so much, trying to fix things up, i think i did?i hate merging so much, trying to fix things up, i think i did? whatever

Page 32: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep -i s t commits.txtstst compilesRemoved st.st doesn't segfault on nice inputst passes tests nowmake st workuser handler: sending st hopefullymutexes don't break stthere is a segfault what is this bullstdis st be brokewoah st didn't break hallelujah

Page 33: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep -i s t commits.txtadded rt send and rt ack functions to the entire handshake, nothing sts itselfthings close without a hitch, added updatequeue to syn_sent packet arrival and it isn't stting itselfeverything is stting itself, and its simclists fault - seeker is going past end of list in in_ch_given_chnicks

Page 34: UChicago CMSC 23300 - The Best Commit Messages of 2015

$ grep -i fk commits.txtfk this

F k this s t, I can't wait for next week

f king timeout s t

f king modes f k

f k deadlocks

f k yes another test passing

F K YEAH WE ARE DONE

how the f k did I pass two more tests? I only fixed one of them. this is gonna bite me in the ass later isn't it? f k me

git couldn't merge a blank line with a deletion of the blank line. motherf ker what are you even good for

hungover as f k

Page 35: UChicago CMSC 23300 - The Best Commit Messages of 2015

Alright, Borja, here's a more descriptive commit message. Fixed message decoder to correctly read the recv buffer over to a buffer that will become a message string. Deleted lots of useless tests. Still need to fix the handler function. Morale is relatively high. High of 20 with a cold front coming in tonight leading to a low of 3, the sky will be partially cloudy. Such descriptive, much project 1b. Wow.

Huge commit. [...] The weather tonight will be clear, with a 50% chance of showers tomorrow. , out.

Pthread implementation added into main function [...]. Cloudy skies into the late afternoon with a chance of showers after midnight. Morale is high, but you have died of dysentery.

Page 36: UChicago CMSC 23300 - The Best Commit Messages of 2015

why did you put the binary file in the repo... -_-

omg stop adding these to the repo

STOP PUSHING THESE FILES TO THE REPO

Page 37: UChicago CMSC 23300 - The Best Commit Messages of 2015

for want of a packetmemory access was losti can't seem to hack iti miss using frost

Page 38: UChicago CMSC 23300 - The Best Commit Messages of 2015

just added threadingand thread-safe token parsingusing strtok_r

Page 39: UChicago CMSC 23300 - The Best Commit Messages of 2015

can send noticesbug in private messagingas yet unresolved

Page 40: UChicago CMSC 23300 - The Best Commit Messages of 2015

LUSERS commandhas been partially writtenneed to add threading

Page 41: UChicago CMSC 23300 - The Best Commit Messages of 2015

added thread lockingbut lusers tests still failproblem is unclear

Page 42: UChicago CMSC 23300 - The Best Commit Messages of 2015

LUSERS tests passwasn't counting every new thread...we are jubilant

Page 43: UChicago CMSC 23300 - The Best Commit Messages of 2015

At last we are doneIt passes all of your testsTonight we get drunk