Slide 1

Slide 1 text

Committing to Writing Good Commit Messages Supporting the Creation of Human- and Machine-Readable Commit Messages with Python and Machine Learning Teona Bagashvili Gregory M. Kapfhammer PyCon 2021 Lightning Talk CommittedTeam/CommitCanvas

Slide 2

Slide 2 text

Committing to Better Commit Messages Insert Delete Files

Slide 3

Slide 3 text

Committing to Better Commit Messages Insert Delete Files git commit Editor Integration Command-line Application

Slide 4

Slide 4 text

Committing to Better Commit Messages Insert Delete Files “Update the build.yml file to run OS matrix” git commit Editor Integration Command-line Application Message

Slide 5

Slide 5 text

Committing to Better Commit Messages Insert Delete Files “Update the build.yml file to run OS matrix” git commit Editor Integration Command-line Application Message Message? Label? Standard? Punctuation? Tense?

Slide 6

Slide 6 text

Committing to Better Commit Messages Insert Delete Files “Update the build.yml file to run OS matrix” git commit Editor Integration Command-line Application Message Message? Label? Standard? Punctuation? Tense?

Slide 7

Slide 7 text

Committing to Better Commit Messages Insert Delete Files “Update the build.yml file to run OS matrix” git commit Editor Integration Command-line Application Message Challenge: Label must match the commit Message? Label? Standard? Punctuation? Tense?

Slide 8

Slide 8 text

Committing to Better Commit Messages Insert Delete Files “Update the build.yml file to run OS matrix” git commit Editor Integration Command-line Application Message Challenge: Label must match the commit Message? Label? Standard? Punctuation? Tense? chore

Slide 9

Slide 9 text

Tool Support for Better Commit Messages Insert Delete Files

Slide 10

Slide 10 text

Tool Support for Better Commit Messages Insert Delete Files CommitCanvas Pre-commit Hook Command-line Application

Slide 11

Slide 11 text

Tool Support for Better Commit Messages Insert Delete Files Update the build.yml file to run OS matrix Integrate the use of textcat with spaCy’s CNN Reformat source code to adhere to all checks Add visualization of model to README.md CommitCanvas Pre-commit Hook Command-line Application Message

Slide 12

Slide 12 text

Tool Support for Better Commit Messages Insert Delete Files Update the build.yml file to run OS matrix Integrate the use of textcat with spaCy’s CNN Reformat source code to adhere to all checks Add visualization of model to README.md CommitCanvas Pre-commit Hook Command-line Application Message Goal: Predict message’s label Automated, Fast, Accurate

Slide 13

Slide 13 text

Tool Support for Better Commit Messages Insert Delete Files Update the build.yml file to run OS matrix Integrate the use of textcat with spaCy’s CNN Reformat source code to adhere to all checks Add visualization of model to README.md CommitCanvas Pre-commit Hook Command-line Application Message Project Goal: Predict message’s label Provided Automated, Fast, Accurate

Slide 14

Slide 14 text

Tool Support for Better Commit Messages Insert Delete Files Update the build.yml file to run OS matrix Integrate the use of textcat with spaCy’s CNN Reformat source code to adhere to all checks Add visualization of model to README.md CommitCanvas Pre-commit Hook Command-line Application Message Goal: Predict message’s label Automated, Fast, Accurate

Slide 15

Slide 15 text

chore feat style docs Tool Support for Better Commit Messages Insert Delete Files Update the build.yml file to run OS matrix Integrate the use of textcat with spaCy’s CNN Reformat source code to adhere to all checks Add visualization of model to README.md CommitCanvas Pre-commit Hook Command-line Application Message Goal: Predict message’s label Label Automated, Fast, Accurate

Slide 16

Slide 16 text

Committing to Writing Good Commit Messages Challenge Writing commit messages with labels that correctly follow standard is time consuming and difficult

Slide 17

Slide 17 text

Committing to Writing Good Commit Messages Challenge Writing commit messages with labels that correctly follow standard is time consuming and difficult Solution CommitCanvas uses machine learning to automatically generate a label that matches the commit

Slide 18

Slide 18 text

Committing to Writing Good Commit Messages Challenge Writing commit messages with labels that correctly follow standard is time consuming and difficult Solution CommitCanvas uses machine learning to automatically generate a label that matches the commit Don’t struggle to label your commits ... Commit to using CommitCanvas!

Slide 19

Slide 19 text

Committing to Writing Good Commit Messages Challenge Writing commit messages with labels that correctly follow standard is time consuming and difficult Solution CommitCanvas uses machine learning to automatically generate a label that matches the commit Don’t struggle to label your commits ... Commit to using CommitCanvas! CommittedTeam/CommitCanvas Tool release mid-June, 2021!