Website development process » History » Version 4
Peter Amstutz, 10/21/2022 01:58 PM
| 1 | 1 | Peter Amstutz | h1. Website Development process |
|---|---|---|---|
| 2 | |||
| 3 | There are two branches, "main" and "develop" |
||
| 4 | |||
| 5 | The "main" one is the main site. When it is pushed, the site is automatically redeployed. |
||
| 6 | |||
| 7 | 3 | Peter Amstutz | The "develop" goes to the "dev" version of the site. This gives us a live preview of what the site will be like. |
| 8 | 1 | Peter Amstutz | |
| 9 | To avoid a confusing edit history, we want "develop" and "main" to always share the same history, with "develop" having additional changes being previewed prior to merging. _If we start merging "main" and "develop" back and forth we'll get spaghetti history and it'll be hard to keep track of which changes have been made, and where._ |
||
| 10 | |||
| 11 | The process for making changes is: |
||
| 12 | |||
| 13 | # create a new branch off of main |
||
| 14 | 2 | Peter Amstutz | ## @git checkout main@ |
| 15 | ## @git branch my-branch@ |
||
| 16 | ## @git checkout my-branch@ |
||
| 17 | 1 | Peter Amstutz | # make changes and test locally on that branch |
| 18 | # check if "develop" is even with "main" (meaning, they should have the exact same commit) |
||
| 19 | 2 | Peter Amstutz | ## @git show-ref main develop@ (the branches should all have the same commit hash) |
| 20 | 1 | Peter Amstutz | ## if "develop" is ahead of "main" then someone else is working on previewing/merging a change (they're on step 5), check in with them |
| 21 | 2 | Peter Amstutz | # using @git rebase@, apply your commits to the "develop" branch (this re-applies the changes you made in your branch, onto the develop branch) |
| 22 | ## @git checkout develop@ |
||
| 23 | ## @git rebase <my-branch>@ |
||
| 24 | 1 | Peter Amstutz | # push "develop" and confirm that the dev site is displaying properly, ask other people to review it, etc |
| 25 | # fast-forward "main" to match "develop" |
||
| 26 | 2 | Peter Amstutz | ## @git checkout main@ |
| 27 | ## @git merge --ff-only develop@ |
||
| 28 | 4 | Peter Amstutz | # Now you can push to main |
| 29 | ## @git push origin@ |