====== Contributing Quick Start ====== ===== Supplemental ===== We use the [[https://www.atlassian.com/git/tutorials/comparing-workflows/forking-workflow|Fork-Rebase workflow]] for our PR's ===== Install Supporting Software ===== ==== MacOS ==== === Homebrew === [[https://brew.sh/|Homebrew installation documentation]] Install homebrew with the following command: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" === Go === [[https://go.dev/doc/install|Go installation documentation]] Install Go with the following command: brew install go === TinyGo === [[https://tinygo.org/getting-started/install/macos/|TinyGo installation documentation]] Install TinyGo with the following command: brew tap tinygo-org/tools brew install tinygo === Github CLI === [[https://cli.github.com/|Github CLI installation documentation]] Install Github CLI with the following command: brew install gh ===== Initial Repo Pull ===== - Run the following to get the repository onto your machine: set -k mkdir -p ~/code cd ~/code # Fork the repo gh repo fork zachary-walters/cultivate-finance - Update the main branch: git checkout main git pull origin main - Re-familiarize yourself with our [[development:conventions#branch_naming|branch naming conventions]] - Create a feature branch: git checkout -b feature/ git push origin feature/ ===== Raising a Pull Request ===== ==== Updating forked repository ==== Make sure your forked repo is up to date with the upstream repository: set -k git remote add upstream zachary-walters/cultivate-finance git checkout main git pull upstream git merge upstream/main git push Prepare your branch for a PR: git checkout feature/ git merge main # resolve any merge conflicts at this point git push ==== Raising the PR ==== - Login to github's website - Navigate to your forked repository - Open a new Pull Request - Ensure the "base" branch is set to the main branch of the upstream repository - Confirm the "compare" branch is set to your feature branch - Provide Details: - Use our [[development:conventions#pull_request_conventions|PR Description Guide]] for reference - Fill in a descriptive title for your pull request. - Write a detailed description, including the purpose of your changes and any relevant information. - Add Reviewers - At the moment, Zachary Walters should be a reviewer on all incoming changes.