~ruther/qmk_firmware

89a5d5aea095172c23b6e886217078ffe404ecec — Nick Brassel 3 years ago b835171
Fixup command sequencing for master/develop. (#17227)

1 files changed, 37 insertions(+), 23 deletions(-)

M docs/breaking_changes.md
M docs/breaking_changes.md => docs/breaking_changes.md +37 -23
@@ 47,28 47,11 @@ Criteria for acceptance:
    * This should be in Markdown format, with a name in the format `PR12345.md`, substituting the digits for your PR's ID.
    * One strong recommendation that the ChangeLog document matches the PR description on GitHub, so as to ensure traceability.

# Checklists
## Checklists

This section documents various processes we use when running the Breaking Changes process.

## Creating the `develop` branch

This happens immediately after the previous `develop` branch is merged.

* `qmk_firmware` git commands
    * [ ] `git checkout master`
    * [ ] `git pull --ff-only`
    * [ ] `git checkout -b develop`
    * [ ] Edit `readme.md`
        * [ ] Add a big notice at the top that this is a testing branch.
        * [ ] Include a link to this document
    * [ ] `git commit -m 'Branch point for <DATE> Breaking Change'`
    * [ ] `git tag breakpoint_<YYYY>_<MM>_<DD>`
    * [ ] `git tag <next_version>` # Prevent the breakpoint tag from confusing version incrementing
    * [ ] `git push upstream develop`
    * [ ] `git push --tags`

## 4 Weeks Before Merge
### 4 Weeks Before Merge

* `develop` is now closed to new PR's, only fixes for current PR's may be merged
* Post call for testers


@@ 76,7 59,7 @@ This happens immediately after the previous `develop` branch is merged.
    * [ ] GitHub PR
    * [ ] https://reddit.com/r/olkb

## 2 Weeks Before Merge
### 2 Weeks Before Merge

* `develop` is now closed to existing PR merges, only bugfixes for previous merges may be included
* Post call for testers


@@ 84,21 67,21 @@ This happens immediately after the previous `develop` branch is merged.
    * [ ] GitHub PR
    * [ ] https://reddit.com/r/olkb

## 1 Week Before Merge
### 1 Week Before Merge

* Announce that master will be closed from <2 Days Before> to <Day of Merge>
    * [ ] Discord
    * [ ] GitHub PR
    * [ ] https://reddit.com/r/olkb

## 2 Days Before Merge
### 2 Days Before Merge

* Announce that master is closed for 2 days
    * [ ] Discord
    * [ ] GitHub PR
    * [ ] https://reddit.com/r/olkb

## Day Of Merge
### Day Of Merge

* `qmk_firmware` git commands
    * [ ] `git checkout develop`


@@ 115,8 98,39 @@ This happens immediately after the previous `develop` branch is merged.
    * [ ] `git checkout master`
    * [ ] `git pull --ff-only`
    * [ ] `git merge --no-ff develop`
    * [ ] `git tag <next_version>` # Prevent the breakpoint tag from confusing version incrementing
    * [ ] `git push upstream <next_version>`
    * [ ] `git push upstream master`

## Post-merge operations

### Updating the `develop` branch

This happens immediately after the previous `develop` branch is merged to `master`.

* `qmk_firmware` git commands
    * [ ] `git checkout master`
    * [ ] `git pull --ff-only`
    * [ ] `git checkout develop`
    * [ ] `git pull --ff-only`
    * [ ] `git merge --no-ff master`
    * [ ] Edit `readme.md`
        * [ ] Add a big notice at the top that this is a testing branch.
        * [ ] Include a link to this document
    * [ ] `git commit -m 'Branch point for <DATE> Breaking Change'`
    * [ ] `git tag breakpoint_<YYYY>_<MM>_<DD>`
    * [ ] `git push upstream breakpoint_<YYYY>_<MM>_<DD>`
    
* All submodules under `lib` now need to be checked against their QMK-based forks:
    * [ ] `git submodule foreach git log -n1`
    * [ ] Validate each submodule SHA1 matches the qmk fork, e.g. for ChibiOS:
        * Go to [qmk/ChibiOS](https://github.com/qmk/ChibiOS)
        * Compare the commit hash in the above output to the commit hash in the repository
        * If there's a mismatch:
            * [ ] `cd lib/chibios`
            * [ ] `git fetch --all`
            * [ ] `git checkout master`
            * [ ] `git reset --hard <commit hash>`
            * [ ] `git push origin master --force-with-lease`

* (Optional) [update ChibiOS + ChibiOS-Contrib on `develop`](chibios_upgrade_instructions.md)