From 7da543d7720a9855d5f01ce245d6e6b7c8f1b752 Mon Sep 17 00:00:00 2001 From: Jiucheng Zang Date: Thu, 31 Oct 2024 13:33:18 -0400 Subject: [PATCH 1/7] Update Git Usage Page --- conf.py | 5 + general/git-usage/git-basics.rst | 168 +++++++++++++++++++++++++++ general/git-usage/git-command.rst | 42 +++++++ general/git-usage/git-team-usage.rst | 22 ++++ general/git-usage/index.rst | 13 +++ general/index.rst | 7 ++ index.rst | 1 - 7 files changed, 257 insertions(+), 1 deletion(-) create mode 100644 general/git-usage/git-basics.rst create mode 100644 general/git-usage/git-command.rst create mode 100644 general/git-usage/git-team-usage.rst create mode 100644 general/git-usage/index.rst diff --git a/conf.py b/conf.py index 6aea6df..1f9d83a 100644 --- a/conf.py +++ b/conf.py @@ -49,3 +49,8 @@ latex_elements = { 'extraclassoptions': 'openany,oneside' } + +extensions = [ + 'sphinx.ext.graphviz', + # other extensions +] diff --git a/general/git-usage/git-basics.rst b/general/git-usage/git-basics.rst new file mode 100644 index 0000000..140a72c --- /dev/null +++ b/general/git-usage/git-basics.rst @@ -0,0 +1,168 @@ +Git Basics +========== + +**Note: Git is not Github, they are two different things.** + +Git is a distributed version control system, but Github is a web-based platform +based on Git to host our codebase. + +Introduction to Git +------------------- + +Git is a distributed version control system that allows you to track changes in +our codebase. It is a powerful tool that can people to work together on the same +codebase without stepping on each other's toes. + +There are three main areas where you will interact with Git: + +1. **Your local repository** - This is where you will make changes to the codebase. + +3. **The staging area** - This is where you will prepare your changes to be committed. + +2. **The remote repository** - This is where the codebase is stored and where you will push your changes. + +.. graphviz:: + + digraph git_flow { + rankdir=LR; + node [shape=rectangle]; + Local_Repository -> Staging_Area -> Remote_Repository; + } + + +Sometimes you need to collaborate with others on the same codebase. In this case, +we will introduce the concept of branches. A branch is a separate line of development +that allows you to work on a feature without affecting the main codebase. Once you +are done with your feature and reviewed by peer developers, you can merge your branch +back into the main codebase. This is called a **pull request (PR)**. + +.. graphviz:: + + digraph git_flow { + rankdir=LR; + node [shape=circle, style=filled, fontcolor=white, width=0.5, fixedsize=true]; + + // Define nodes for the develop branch (yellow) + Develop1 [label="", color="#FFD700"]; + Develop2 [label="", color="#FFD700"]; + Develop3 [label="", color="#FFD700"]; + + // Define nodes for the feature branch (pink) + Feature1 [label="", color="#FF69B4"]; + Feature2 [label="", color="#FF69B4"]; + Feature3 [label="", color="#FF69B4"]; + + // Labels for branches without background + FeatureLabel [shape=plaintext, label="Feature", fontcolor="#FF69B4"]; + DevelopLabel [shape=plaintext, label="Develop", fontcolor="#FFD700"]; + + // Arrange labels at the top and align nodes in the same rank + {rank=same; FeatureLabel -> Feature1 [style=invis]} + {rank=same; DevelopLabel -> Develop1 [style=invis]} + {rank=same; Feature1 -> Feature2 -> Feature3} + {rank=same; Develop1 -> Develop2 -> Develop3} + + // Connect nodes to show the commit flow + edge [style=solid, color=black]; + Develop1 -> Feature1 [arrowhead=normal]; + Feature3 -> Develop2 [arrowhead=normal]; + } + +That's it! You now have a basic understanding of Git and how to use it to work +on a codebase. + +Installing Git +-------------- + +To get started with Git, you will need to install Git on your machine. + +* Windows users + 1. You can download Git from the `official Git website `_. + 2. Run the installer and follow the instructions. + 3. Once installed, you can open Git Bash to start using Git. + 4. You can verify that Git is installed by running: + ``git --version`` + +* Mac users + 1. Run the following command in your terminal: + ``xcode-select --install`` + 2. xcode-select will prompt you to install the command line developer tools. Click "Install". + 3. Command line developer tools include Git. You can verify this by running: + ``git --version`` + +* Linux users + 1. Run the following command in your terminal: + ``sudo apt-get install git`` + 2. You can verify that Git is installed by running: + ``git --version`` + +Once you have Git installed, you need to configure your Git username and email. +This is important because every Git commit will use this information to identify +you as the author of the commit. + +To configure your Git username and email, run the following commands: + +.. code-block:: bash + + git config --global user.name "Your Name" + git config --global user.email " + +Now you are ready to start using Git! + +Github Repository +----------------- + +We use Github to host our codebase. Github is a web-based platform that allows +you to store and manage your codebase. It also provides tools for collaboration +such as pull requests, issues, and project boards. + +To connect your local repository to the remote repository on Github, you will +need to create a Github account and get upload your public SSH key to Github. + +To create a Github account, go to the `Github website `_ and +follow the instructions to create an account. + +SSH Key is a secure way to connect to Github without having to enter your +username and password every time. To generate an SSH key, run the following +command in your terminal: + +.. code-block:: bash + + ssh-keygen -t rsa -b 4096 -C "github-verify-ssh" + +This command will generate an SSH key pair. You will be prompted to enter a +passphrase. You can leave it blank if you don't want to enter a passphrase. + +Once the SSH key is generated, you can add it to your SSH agent by running: + +.. code-block:: bash + + eval "$(ssh-agent -s)" + ssh-add ~/.ssh/id_rsa + +Now you can copy the public SSH key to your clipboard by running: + +.. code-block:: bash + + cat ~/.ssh/id_rsa.pub | pbcopy + +Now you can add the SSH key to your Github account. Go to your Github account +settings, click on "SSH and GPG keys", and click on "New SSH key". Paste the +public SSH key into the text box and click "Add SSH key". + +Now you are ready to connect your local repository to the remote repository on +Github. + +Clone Onboarding Repository +--------------------------- + +Run the following command to clone the onboarding repository: + +.. code-block:: bash + + git clone https://github.com/waterloo-rocketry/software-onboarding.git + +Read the README.md file in the repository to get started with the onboarding process. + +Congratulations! You have enough knowledge to get started with Git and Github. To check +out Git Commands, go to the next page. \ No newline at end of file diff --git a/general/git-usage/git-command.rst b/general/git-usage/git-command.rst new file mode 100644 index 0000000..3513d25 --- /dev/null +++ b/general/git-usage/git-command.rst @@ -0,0 +1,42 @@ +Git Common Commands +------------------- + +This section will cover common `git` commands that you will use frequently. + +* ``git init``: Initializes a new Git repository. You should run this command in the root directory of your project. +* ``git clone ``: Clones a remote repository to your local machine. You should run this command in the directory where you want to store the repository. +* ``git status``: Shows the status of your working directory and staging area. +* ``git add ``: Adds a file to the staging area. +* ``git commit -m ""``: Commits the changes in the staging area to the repository. +* ``git push``: Pushes your changes to the remote repository. +* ``git pull``: Pulls changes from the remote repository to your local repository. +* ``git log``: Shows the commit history of the repository. +* ``git branch``: Shows the branches in the repository. +* ``git checkout ``: Switches to the specified branch. +* ``git checkout -b ``: Creates a new branch and switches to it. +* ``git merge ``: Merges the specified branch into the current branch. +* ``git remote -v``: Shows the remote repositories associated with your local repository. +* ``git remote add ``: Adds a new remote repository to your local repository. +* ``git remote remove ``: Removes a remote repository from your local repository. +* ``git fetch``: Fetches changes from the remote repository. +* ``git reset --hard HEAD~1``: Resets the working directory and staging area to the commit before the last commit. +* ``git reset --soft HEAD~1``: Resets the staging area to the commit before the last commit. +* ``git reset --hard ``: Resets the working directory and staging area to the specified commit. +* ``git blame ``: Shows the commit history of a file, including who made each change. +* ``git diff``: Shows the differences between the working directory and the staging area. +* ``git diff --staged``: Shows the differences between the staging area and the repository. +* ``git stash``: Stashes changes in the working directory and staging area. +* ``git stash pop``: Applies the most recent stash to the working directory and staging area. +* ``git stash list``: Shows a list of stashes. +* ``git tag ``: Creates a tag for the current commit. +* ``git tag -a -m ""``: Creates an annotated tag for the current commit. +* ``git tag``: Shows the tags in the repository. +* ``git push --tags``: Pushes tags to the remote repository. +* ``git push origin --delete ``: Deletes a remote branch. +* ``git branch -d ``: Deletes a local branch. +* ``git config --global user.name "Your Name"``: Configures your Git username. +* ``git bisect``: Helps you find the commit that introduced a bug. + +These are just a few of the many `git` commands available. You can find more commands and options in the `git documentation `_. + +What's Next? Now that you have learned the basics of `git`, you can move on the next section to learn our team `git` usage specifics. \ No newline at end of file diff --git a/general/git-usage/git-team-usage.rst b/general/git-usage/git-team-usage.rst new file mode 100644 index 0000000..96f0ea9 --- /dev/null +++ b/general/git-usage/git-team-usage.rst @@ -0,0 +1,22 @@ +Team Git Usage Specification +============================= + +**Note: This section is for every team member working on a project.** + +1. For every commit message, you should follow the `Conventional Commits `_ specification. This will help us generate changelogs and version releases automatically. +2. Prirotize using rebasing over merging. This will help keep the commit history clean and linear. +3. `.gitignore` files should be used to exclude files and directories that should not be tracked by Git. You can find examples of `.gitignore` files for different languages and frameworks on `Templet `_. +4. `CODEOWENERS` files should be used to specify who is responsible for reviewing and approving changes to specific parts of the codebase. This will help ensure that changes are reviewed by the appropriate team members. +5. Feature Branch name rule should be descriptive and follow the structure: `/`. For example, `j7zang/add-git-usage`. +6. Pull requests should be reviewed by at least one other team member before merging. This will help catch bugs and ensure that changes are consistent with the project's coding standards. +7. Only the PR owner should merge the PR. (Unless the PR owner is unavailable, then the PR owner should assign another team member to merge the PR.) + +**Note: This section is for code reviewers.** + +1. Make sure you are in the `CODEOWNERS` file for the code you are responsible for reviewing. +2. Please configure the develop environment to run the code and test the changes before approving the PR. +3. Make sure you are following the project's coding standards and guidelines when reviewing the code. +4. Provide constructive feedback and suggestions for improvement in the PR comments. +5. Every PR should be reviewed within 3 days of being opened. If you are unable to review the PR within this time frame, please let the PR owner know. +6. If you have any concerns or questions about the PR, please discuss them with the PR owner before approving the PR. +7. Project Lead should decide who and how many reviewers are required for a project. \ No newline at end of file diff --git a/general/git-usage/index.rst b/general/git-usage/index.rst new file mode 100644 index 0000000..2724fff --- /dev/null +++ b/general/git-usage/index.rst @@ -0,0 +1,13 @@ +Git Usage Guidelines +==================== + +This guide is intended to help you get started with `git`. It will cover the +basics of using `git`, as well as team `git` usage specifics. + +.. toctree:: + :maxdepth: 2 + :caption: Git Guidelines + + git-basics.rst + git-command.rst + git-team-usage.rst \ No newline at end of file diff --git a/general/index.rst b/general/index.rst index 86caeb2..5a7faf6 100644 --- a/general/index.rst +++ b/general/index.rst @@ -1,2 +1,9 @@ General ======= + +.. toctree:: + :maxdepth: 2 + :caption: General + + git-usage/index.rst + standards/index.rst \ No newline at end of file diff --git a/index.rst b/index.rst index e7a8318..4be73e6 100644 --- a/index.rst +++ b/index.rst @@ -8,7 +8,6 @@ Waterloo Rocketry Documentation Site :caption: General general/index.rst - general/standards/index.rst .. toctree:: :maxdepth: 2 From f06da272c66791cd1e9314375cda6d3cf74c60ad Mon Sep 17 00:00:00 2001 From: Jiucheng Zang Date: Thu, 31 Oct 2024 13:39:36 -0400 Subject: [PATCH 2/7] Update Git Workflow to support graphviz --- .github/workflows/sphinx-compile-test.yml | 4 ++++ .github/workflows/sphinx-github-pages-deploy.yml | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/.github/workflows/sphinx-compile-test.yml b/.github/workflows/sphinx-compile-test.yml index ab116d7..e557b94 100644 --- a/.github/workflows/sphinx-compile-test.yml +++ b/.github/workflows/sphinx-compile-test.yml @@ -21,6 +21,10 @@ jobs: - name: Install Sphinx run: | sudo apt install python3-sphinx-rtd-theme + - name: Install Graphviz + run: | + sudo apt-get update + sudo apt-get install -y graphviz - name: Setup Pages id: pages uses: actions/configure-pages@v5 diff --git a/.github/workflows/sphinx-github-pages-deploy.yml b/.github/workflows/sphinx-github-pages-deploy.yml index 797edf5..1a32fcf 100644 --- a/.github/workflows/sphinx-github-pages-deploy.yml +++ b/.github/workflows/sphinx-github-pages-deploy.yml @@ -34,6 +34,10 @@ jobs: - name: Install Sphinx run: | sudo apt install python3-sphinx-rtd-theme + - name: Install Graphviz + run: | + sudo apt-get update + sudo apt-get install -y graphviz - name: Setup Pages id: pages uses: actions/configure-pages@v5 From 96ad9d1ce27ceb3bbe927b3fd4c89f6343b8b96f Mon Sep 17 00:00:00 2001 From: Jason Xu <40355221+JasonBrave@users.noreply.github.com> Date: Thu, 31 Oct 2024 14:12:07 -0400 Subject: [PATCH 3/7] combine sphinx and graphviz install in the workflow file --- .github/workflows/sphinx-compile-test.yml | 7 ++----- .github/workflows/sphinx-github-pages-deploy.yml | 7 ++----- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/.github/workflows/sphinx-compile-test.yml b/.github/workflows/sphinx-compile-test.yml index e557b94..2e77c63 100644 --- a/.github/workflows/sphinx-compile-test.yml +++ b/.github/workflows/sphinx-compile-test.yml @@ -18,13 +18,10 @@ jobs: uses: actions/checkout@v4 with: submodules: 'true' - - name: Install Sphinx - run: | - sudo apt install python3-sphinx-rtd-theme - - name: Install Graphviz + - name: Install Sphinx and Graphviz run: | sudo apt-get update - sudo apt-get install -y graphviz + sudo apt install -y python3-sphinx-rtd-theme graphviz - name: Setup Pages id: pages uses: actions/configure-pages@v5 diff --git a/.github/workflows/sphinx-github-pages-deploy.yml b/.github/workflows/sphinx-github-pages-deploy.yml index 1a32fcf..f45d819 100644 --- a/.github/workflows/sphinx-github-pages-deploy.yml +++ b/.github/workflows/sphinx-github-pages-deploy.yml @@ -31,13 +31,10 @@ jobs: uses: actions/checkout@v4 with: submodules: 'true' - - name: Install Sphinx - run: | - sudo apt install python3-sphinx-rtd-theme - - name: Install Graphviz + - name: Install Sphinx and Graphviz run: | sudo apt-get update - sudo apt-get install -y graphviz + sudo apt install -y python3-sphinx-rtd-theme graphviz - name: Setup Pages id: pages uses: actions/configure-pages@v5 From 8f1719e7b9a9f181794db10cce2b2b560687d030 Mon Sep 17 00:00:00 2001 From: Jason Xu <40355221+JasonBrave@users.noreply.github.com> Date: Thu, 31 Oct 2024 14:28:49 -0400 Subject: [PATCH 4/7] move git usage to tutorials section --- general/index.rst | 9 --------- index.rst | 3 ++- .../git-usage/git-basics.rst | 0 .../git-usage/git-command.rst | 0 .../git-usage/git-team-usage.rst | 0 {general => onboarding-tutorials}/git-usage/index.rst | 6 +++--- 6 files changed, 5 insertions(+), 13 deletions(-) delete mode 100644 general/index.rst rename {general => onboarding-tutorials}/git-usage/git-basics.rst (100%) rename {general => onboarding-tutorials}/git-usage/git-command.rst (100%) rename {general => onboarding-tutorials}/git-usage/git-team-usage.rst (100%) rename {general => onboarding-tutorials}/git-usage/index.rst (78%) diff --git a/general/index.rst b/general/index.rst deleted file mode 100644 index 5a7faf6..0000000 --- a/general/index.rst +++ /dev/null @@ -1,9 +0,0 @@ -General -======= - -.. toctree:: - :maxdepth: 2 - :caption: General - - git-usage/index.rst - standards/index.rst \ No newline at end of file diff --git a/index.rst b/index.rst index 4be73e6..eff2fcd 100644 --- a/index.rst +++ b/index.rst @@ -7,12 +7,13 @@ Waterloo Rocketry Documentation Site :maxdepth: 2 :caption: General - general/index.rst + general/standards/index.rst .. toctree:: :maxdepth: 2 :caption: Onboarding & Tutorials + onboarding-tutorials/git-usage/index.rst onboarding-tutorials/electrical-onboarding/index.rst onboarding-tutorials/software-onboarding/index.rst onboarding-tutorials/firmware-how-to/index.rst diff --git a/general/git-usage/git-basics.rst b/onboarding-tutorials/git-usage/git-basics.rst similarity index 100% rename from general/git-usage/git-basics.rst rename to onboarding-tutorials/git-usage/git-basics.rst diff --git a/general/git-usage/git-command.rst b/onboarding-tutorials/git-usage/git-command.rst similarity index 100% rename from general/git-usage/git-command.rst rename to onboarding-tutorials/git-usage/git-command.rst diff --git a/general/git-usage/git-team-usage.rst b/onboarding-tutorials/git-usage/git-team-usage.rst similarity index 100% rename from general/git-usage/git-team-usage.rst rename to onboarding-tutorials/git-usage/git-team-usage.rst diff --git a/general/git-usage/index.rst b/onboarding-tutorials/git-usage/index.rst similarity index 78% rename from general/git-usage/index.rst rename to onboarding-tutorials/git-usage/index.rst index 2724fff..276945b 100644 --- a/general/git-usage/index.rst +++ b/onboarding-tutorials/git-usage/index.rst @@ -1,5 +1,5 @@ -Git Usage Guidelines -==================== +Git Tutorial +============ This guide is intended to help you get started with `git`. It will cover the basics of using `git`, as well as team `git` usage specifics. @@ -10,4 +10,4 @@ basics of using `git`, as well as team `git` usage specifics. git-basics.rst git-command.rst - git-team-usage.rst \ No newline at end of file + git-team-usage.rst From 47efed2e1291aa357c98536e39ae2a33220e251c Mon Sep 17 00:00:00 2001 From: Jason Xu <40355221+JasonBrave@users.noreply.github.com> Date: Thu, 31 Oct 2024 15:21:50 -0400 Subject: [PATCH 5/7] Re-organize git best practice page --- general/best-practices/git-best-practices.rst | 26 +++++++++++++++++++ general/best-practices/index.rst | 8 ++++++ index.rst | 1 + .../git-usage/git-team-usage.rst | 22 ---------------- onboarding-tutorials/git-usage/index.rst | 7 +++-- 5 files changed, 38 insertions(+), 26 deletions(-) create mode 100644 general/best-practices/git-best-practices.rst create mode 100644 general/best-practices/index.rst delete mode 100644 onboarding-tutorials/git-usage/git-team-usage.rst diff --git a/general/best-practices/git-best-practices.rst b/general/best-practices/git-best-practices.rst new file mode 100644 index 0000000..ddc8ab1 --- /dev/null +++ b/general/best-practices/git-best-practices.rst @@ -0,0 +1,26 @@ +Git Best Practices +================== + +**For developing features** + +1. Prirotize using rebasing over merging. This will help keep the commit history clean and linear. +2. Only the PR owner should merge the PR. (Unless the PR owner is unavailable, then the PR owner should assign another team member to merge the PR.) +3. Feature Branch name rule should be descriptive and follow the structure: `/`. For example, `j7zang/pic18f26k83-i2c-master-driver`. +4. Open a draft PR as soon as new feature branch is created, and set it as a draft PR, and only remove draft status of the PR when the R is ready for review. + +**For reviewing PR** + +1. If you have any concerns or questions about the PR, please discuss them with the PR owner before approving the PR. +2. Make sure you are following the project's revelant standards and guidelines(electrical standard/firmware standard) when reviewing the PR. +3. Provide constructive feedback and suggestions for improvement in the PR comments. +4. Every PR should be reviewed within 3 days of being opened. If you are unable to review the PR within this time frame, please let the PR owner know. + +**Specific to software** + +1. For every commit message, you should follow the `Conventional Commits `_ specification. This will help us generate changelogs and version releases automatically. +2. Please configure the develop environment to run the code and test the changes before approving the PR. + +**Contents of a Git repository** + +1. `.gitignore` files should be used to exclude files and directories that should not be tracked by Git. +2. `.github/CODEOWENERS` files should be used to specify who is responsible for reviewing and approving changes to specific parts of the codebase. This will help ensure that changes are reviewed by the appropriate team members. diff --git a/general/best-practices/index.rst b/general/best-practices/index.rst new file mode 100644 index 0000000..19416a0 --- /dev/null +++ b/general/best-practices/index.rst @@ -0,0 +1,8 @@ +Best Practices +============== + +.. toctree:: + :maxdepth: 2 + :caption: Best Practices + + git-best-practices.rst diff --git a/index.rst b/index.rst index eff2fcd..a465dbe 100644 --- a/index.rst +++ b/index.rst @@ -8,6 +8,7 @@ Waterloo Rocketry Documentation Site :caption: General general/standards/index.rst + general/best-practices/index.rst .. toctree:: :maxdepth: 2 diff --git a/onboarding-tutorials/git-usage/git-team-usage.rst b/onboarding-tutorials/git-usage/git-team-usage.rst deleted file mode 100644 index 96f0ea9..0000000 --- a/onboarding-tutorials/git-usage/git-team-usage.rst +++ /dev/null @@ -1,22 +0,0 @@ -Team Git Usage Specification -============================= - -**Note: This section is for every team member working on a project.** - -1. For every commit message, you should follow the `Conventional Commits `_ specification. This will help us generate changelogs and version releases automatically. -2. Prirotize using rebasing over merging. This will help keep the commit history clean and linear. -3. `.gitignore` files should be used to exclude files and directories that should not be tracked by Git. You can find examples of `.gitignore` files for different languages and frameworks on `Templet `_. -4. `CODEOWENERS` files should be used to specify who is responsible for reviewing and approving changes to specific parts of the codebase. This will help ensure that changes are reviewed by the appropriate team members. -5. Feature Branch name rule should be descriptive and follow the structure: `/`. For example, `j7zang/add-git-usage`. -6. Pull requests should be reviewed by at least one other team member before merging. This will help catch bugs and ensure that changes are consistent with the project's coding standards. -7. Only the PR owner should merge the PR. (Unless the PR owner is unavailable, then the PR owner should assign another team member to merge the PR.) - -**Note: This section is for code reviewers.** - -1. Make sure you are in the `CODEOWNERS` file for the code you are responsible for reviewing. -2. Please configure the develop environment to run the code and test the changes before approving the PR. -3. Make sure you are following the project's coding standards and guidelines when reviewing the code. -4. Provide constructive feedback and suggestions for improvement in the PR comments. -5. Every PR should be reviewed within 3 days of being opened. If you are unable to review the PR within this time frame, please let the PR owner know. -6. If you have any concerns or questions about the PR, please discuss them with the PR owner before approving the PR. -7. Project Lead should decide who and how many reviewers are required for a project. \ No newline at end of file diff --git a/onboarding-tutorials/git-usage/index.rst b/onboarding-tutorials/git-usage/index.rst index 276945b..6f0b863 100644 --- a/onboarding-tutorials/git-usage/index.rst +++ b/onboarding-tutorials/git-usage/index.rst @@ -1,13 +1,12 @@ Git Tutorial ============ -This guide is intended to help you get started with `git`. It will cover the -basics of using `git`, as well as team `git` usage specifics. +This guide is intended to help you get started with `git`, it covers the +basics of using `git`. For team specific git guidelines refer to ???? .. toctree:: :maxdepth: 2 - :caption: Git Guidelines + :caption: Tutorial git-basics.rst git-command.rst - git-team-usage.rst From ccbc8e609614b0b168eb603a51ff8ff2658672b5 Mon Sep 17 00:00:00 2001 From: Jason Xu <40355221+JasonBrave@users.noreply.github.com> Date: Thu, 31 Oct 2024 15:29:13 -0400 Subject: [PATCH 6/7] Fix links between git tutorial pages --- onboarding-tutorials/git-usage/git-command.rst | 2 +- onboarding-tutorials/git-usage/index.rst | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/onboarding-tutorials/git-usage/git-command.rst b/onboarding-tutorials/git-usage/git-command.rst index 3513d25..bcc383e 100644 --- a/onboarding-tutorials/git-usage/git-command.rst +++ b/onboarding-tutorials/git-usage/git-command.rst @@ -39,4 +39,4 @@ This section will cover common `git` commands that you will use frequently. These are just a few of the many `git` commands available. You can find more commands and options in the `git documentation `_. -What's Next? Now that you have learned the basics of `git`, you can move on the next section to learn our team `git` usage specifics. \ No newline at end of file +What's Next? Now that you have learned the basics of `git`, you can move on to learn our team :doc:`Git Best Practices `. diff --git a/onboarding-tutorials/git-usage/index.rst b/onboarding-tutorials/git-usage/index.rst index 6f0b863..ea4e087 100644 --- a/onboarding-tutorials/git-usage/index.rst +++ b/onboarding-tutorials/git-usage/index.rst @@ -2,7 +2,7 @@ Git Tutorial ============ This guide is intended to help you get started with `git`, it covers the -basics of using `git`. For team specific git guidelines refer to ???? +basics of using `git`. For team specific git guidelines refer to :doc:`Git Best Practices ` .. toctree:: :maxdepth: 2 From 9fa8d7785191a1789bf0c674e9f15c3eb74212f4 Mon Sep 17 00:00:00 2001 From: Jiucheng Zang Date: Thu, 31 Oct 2024 15:34:23 -0400 Subject: [PATCH 7/7] Fix a typo --- general/best-practices/git-best-practices.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/general/best-practices/git-best-practices.rst b/general/best-practices/git-best-practices.rst index ddc8ab1..ae4e5be 100644 --- a/general/best-practices/git-best-practices.rst +++ b/general/best-practices/git-best-practices.rst @@ -6,8 +6,8 @@ Git Best Practices 1. Prirotize using rebasing over merging. This will help keep the commit history clean and linear. 2. Only the PR owner should merge the PR. (Unless the PR owner is unavailable, then the PR owner should assign another team member to merge the PR.) 3. Feature Branch name rule should be descriptive and follow the structure: `/`. For example, `j7zang/pic18f26k83-i2c-master-driver`. -4. Open a draft PR as soon as new feature branch is created, and set it as a draft PR, and only remove draft status of the PR when the R is ready for review. - +4. Open a draft PR as soon as new feature branch is created, and set it as a draft PR, and only remove draft status of the PR when the PR is ready for review. + **For reviewing PR** 1. If you have any concerns or questions about the PR, please discuss them with the PR owner before approving the PR.