Table Of Contents
Your developer environment should be Ubuntu 20.04.1 LTS (Focal Fossa). And we highly recommend to use Visual Studio Code as your editor.
Other operating systems or Linux distributions are not tested and might not work!
To integrate new code we use the "Git Rebase Workflow" in order to maintain a linear Git history and prevent branch-merging hell.
Just follow the 5 steps below:
Make sure your Git is configured properly
git config --global core.editor "code --wait"
git config --global user.name "username"
git config --global user.email "[email protected]"
Preferably follow this signature verification guide and then run:
git config --global user.signingKey <YOUR_KEY>
git config --global commit.gpgSign true
Fork and clone the repository
- Head to https://github.com/drakery3d/fullbazel and click "Fork" on the top right
- Then clone the forked repository by running:
git clone https://github.com/<your-username>/fullbazel cd fullbazel git remote add upstream https://github.com/drakery3d/fullbazel
git pull origin upstream/master
git checkout -b my-feature
git commit -m "feat: implemented xyz"
git commit -m "refactor: improved abc"
git fetch upstream
git checkout my-feature
git rebase --interactive upstream/master
You might need to solve some conflicts when rebasing:
# solve conflicting files
git add .
git rebase --continue
git push -u origin my-feature
In the GitHub user interface, create a pull request to merge my-feature
into drakery3d/fullbazel/master
Often, you want to do some changes to the open pull request. Here is how you can dot that:
git checkout my-feature
git commit -m "fix: xyz solved"
git fetch origin pull/<pr-id>/head:my-feature
git checkout my-feature
# check if everything works fine
git checkout master
git rebase my-feature
git push
git push origin -d my-feature
https://github.com/drakery3d/fullbazel/issues