To contribute to zsh-alacritty project on GitHub, We use GitHub Flow, it means that you should branch from the main repository and contribute back by making pull request.
GitHub Flow is very lightweight (especially compared to GitFlow). This workflow uses only two kinds of branches:
- Feature branch
- Main branch (previously called master)
The feature branches are used to develop new features as well as fixes. These branches are usually created out of main.
Anything in the main branch is deployable. The main branch is expected to be deployed regularly and is considered stable.
For more information see GitHub Flow
To follow the instructions in this guide and start contributing to zsh-alacritty project on GitHub:
- Fork the repo on GitHub
- Clone the project to your own machine
To synchronize with the main repository, add it to the remotes:
git remote add upstream https://github.com/hadenlabs/zsh-alacritty.git
Now your upstream points to hadenlabs/zsh-alacritty.
The master branch contains production code and it stores the official release history.
Each new feature should reside in its own branch, which can be pushed to the central repository for backup/collaboration. But, instead of branching off of main, feature branches use develop as their parent branch.
- When a feature is complete, it gets merged back into main.
Resolve any merge conflicts that may arise. If conflict occurs, a corresponding message will be displayed on the PR page on GitHub.
To resolve a conflict, run the following commands.
# checkout a branch you open PR from
git fetch upstream # assuming upstream is hadenlabs/zsh-alacritty
git merge upstream/merge_branch # Where merge_branch is a branch you open merge request against.
# resolve merge requests
git add changed_files
git commit
git push
Github will automatically update your pull request.
All merge requests are automatically tested using Github Actions. In case some tests fail, fix the issues or describe why the fix cannot be done.
Every pull request is reviewed by the assigned team members as per standard Pull Request. Reviewers can comment on a PR, approve it, or request changes to it. A PR can be merged when it is approved by at least two assigned reviewers and has no pending requests for changes.
Please have a look at our Code of Conduct before you write an Issue or make a PR.