From 6d792b4280fd190a8335a2220c58e2c6137c450a Mon Sep 17 00:00:00 2001 From: Jimmy Chen Date: Tue, 7 May 2024 10:36:32 +1000 Subject: [PATCH] Revise contributors guide (#5720) * Revise contributors guide. --- CONTRIBUTING.md | 42 ++++++++++++++++++++++++++---------------- 1 file changed, 26 insertions(+), 16 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a408fcdd52..3c53558a10 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,12 +1,14 @@ # Contributors Guide + [![GitPOAP badge](https://public-api.gitpoap.io/v1/repo/sigp/lighthouse/badge)](https://www.gitpoap.io/gh/sigp/lighthouse) -Lighthouse is an open-source Ethereum 2.0 client. We're community driven and +Lighthouse is an open-source Ethereum consensus client. We're community driven and welcome all contribution. We aim to provide a constructive, respectful and fun environment for collaboration. -We are active contributors to the [Ethereum 2.0 specification](https://github.com/ethereum/eth2.0-specs) and attend all [Eth -2.0 implementers calls](https://github.com/ethereum/eth2.0-pm). +We are active contributors to +the [Ethereum Proof-of-Stake Consensus specification](https://github.com/ethereum/consensus-specs) and attend +all [Ethereum implementers calls](https://github.com/ethereum/pm/). This guide is geared towards beginners. If you're an open-source veteran feel free to just skim this document and get straight into crushing issues. @@ -41,7 +43,7 @@ We recommend the following work-flow for contributors: 1. **Find an issue** to work on, either because it's interesting or suitable to your skill-set. Use comments to communicate your intentions and ask -questions. + questions. 2. **Work in a feature branch** of your personal fork (github.com/YOUR_NAME/lighthouse) of the main repository (github.com/sigp/lighthouse). @@ -49,13 +51,13 @@ questions. `unstable` as the base branch to merge your changes into the main repository. 4. Wait for the repository maintainers to **review your changes** to ensure the issue is addressed satisfactorily. Optionally, mention your PR on -[discord](https://discord.gg/cyAszAh). + [discord](https://discord.gg/cyAszAh). 5. If the issue is addressed the repository maintainers will **merge your pull-request** and you'll be an official contributor! Generally, you find an issue you'd like to work on and announce your intentions to start work in a comment on the issue. Then, do your work on a separate -branch (a "feature branch") in your own fork of the main repository. Once +branch (a "feature branch") in your own fork of the main repository. Once you're happy and you think the issue has been addressed, create a pull request into the main repository. @@ -66,18 +68,20 @@ steps: 1. [Create a fork](https://help.github.com/articles/fork-a-repo/#fork-an-example-repository) -and [clone -it](https://help.github.com/articles/fork-a-repo/#step-2-create-a-local-clone-of-your-fork) -to your local machine. + and [clone + it](https://help.github.com/articles/fork-a-repo/#step-2-create-a-local-clone-of-your-fork) + to your local machine. 2. [Add an _"upstream"_ branch](https://help.github.com/articles/fork-a-repo/#step-3-configure-git-to-sync-your-fork-with-the-original-spoon-knife-repository) -that tracks github.com/sigp/lighthouse using `$ git remote add upstream -https://github.com/sigp/lighthouse.git` (pro-tip: [use SSH](https://help.github.com/articles/connecting-to-github-with-ssh/) instead of HTTPS). + that tracks github.com/sigp/lighthouse using `$ git remote add upstream + https://github.com/sigp/lighthouse.git` ( + pro-tip: [use SSH](https://help.github.com/articles/connecting-to-github-with-ssh/) instead of HTTPS). 3. Create a new feature branch with `$ git checkout -b your_feature_name`. The name of your branch isn't critical but it should be short and instructive. -E.g., if you're fixing a bug with serialization, you could name your branch -`fix_serialization_bug`. -4. Make sure you sign your commits. See [relevant doc](https://help.github.com/en/github/authenticating-to-github/about-commit-signature-verification). + E.g., if you're fixing a bug with serialization, you could name your branch + `fix_serialization_bug`. +4. Make sure you sign your commits. + See [relevant doc](https://help.github.com/en/github/authenticating-to-github/about-commit-signature-verification). 5. Commit your changes and push them to your fork with `$ git push origin your_feature_name`. 6. Go to your fork on github.com and use the web interface to create a pull @@ -92,22 +96,28 @@ by Rob Allen that provides much more detail on each of these steps, if you're having trouble. As always, jump on [discord](https://discord.gg/cyAszAh) if you get stuck. +Additionally, +the ["Contributing to Lighthouse" section](https://lighthouse-book.sigmaprime.io/contributing.html#contributing-to-lighthouse) +of the Lighthouse Book provides more details on the setup. ## FAQs ### I don't think I have anything to add There's lots to be done and there's all sorts of tasks. You can do anything -from correcting typos through to writing core consensus code. If you reach out, +from enhancing documentation through to writing core consensus code. If you reach out, we'll include you. +Please note, to maintain project quality, we may not accept PRs for small typos or changes +with minimal impact. + ### I'm not sure my Rust is good enough We're open to developers of all levels. If you create a PR and your code doesn't meet our standards, we'll help you fix it and we'll share the reasoning with you. Contributing to open-source is a great way to learn. -### I'm not sure I know enough about Ethereum 2.0 +### I'm not sure I know enough about Ethereum No problems, there's plenty of tasks that don't require extensive Ethereum knowledge. You can learn about Ethereum as you go.