Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Atomic Commits - An Easy & Proven Way to Manage & Automate Release Process

Lee Wei
July 29, 2023
330

Atomic Commits - An Easy & Proven Way to Manage & Automate Release Process

Lee Wei

July 29, 2023
Tweet

Transcript

  1. __name__ = 李唯 / Wei Lee __what_i_am_doing__ = [ volunteers

    @ PyCon Taiwan, maintainer of commitizen-tools, ] __github__ = G Lee-W __site__ = p http://wei-lee.me $ cat speaker.py
  2. File "speaker.py", line 1 __name__ = 李唯 / Wei Lee

    ^^^ SyntaxError: invalid syntax $ python speaker.py
  3. Semantic Versioning 1. MAJOR: incompatible change 2. MINOR: backward compatible

    functionalities 3. PATCH: backward compatible bug fixes 

  4. Commits from CPython What will you do if these are

    the changes you're going to release?
  5. How to write good commit messages? 1. Separate subject from

    body with a blank line 2. Limit the subject line to 50 characters 3. Capitalize the subject line 4. Do not end the subject line with a period 5. Use the imperative mood in the subject line 6. Wrap the body at 72 characters 7. Use the body to explain what and why vs. how
  6. Semantic Versioning 1. MAJOR: incompatible change 2. MINOR: backward compatible

    functionalities 3. PATCH: backward compatible bug fixes 

  7. Semantic Versioning 1. MAJOR: incompatible change 2. MINOR: backward compatible

    functionalities 3. PATCH: backward compatible bug fixes 4. OTHER: other changes (e.g., documentation change)
  8. Type of Changes 1.New Feature 2.Bug fix 3.Refactor 4.Style Change

    5.Documentation 6.Improve test coverage 7.Performance 8.Build tool 9.CI/CD 10.and etc.