Skip to content

Commit ba7a1f3

Browse files
Kieleknrcventura
andauthored
[docs] Contributing first PR (#4159)
* [docs] Contributing first PR Based on https://github.com/open-telemetry/opentelemetry-go/blob/3ec70fd0379970acf00959c14a72885b984a7b09/CONTRIBUTING.md#how-to-receive-comments * Update docs/CONTRIBUTING.md Co-authored-by: Chris Ventura <[email protected]> --------- Co-authored-by: Chris Ventura <[email protected]>
1 parent 963b170 commit ba7a1f3

File tree

1 file changed

+89
-0
lines changed

1 file changed

+89
-0
lines changed

docs/CONTRIBUTING.md

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,3 +60,92 @@ on something that maintainers may decide this repo is not the right place for.
6060

6161
See [developing.md](developing.md) to learn more about
6262
the development environment setup and usage.
63+
64+
## Create Your First Pull Request
65+
66+
### How to Send Pull Requests
67+
68+
Everyone is welcome to contribute code to `opentelemetry-dotnet-instrumentation`
69+
via GitHub pull requests (PRs).
70+
71+
To create a new PR, fork the project in GitHub and clone the upstream repo:
72+
73+
> [!NOTE]
74+
> Please fork to a personal GitHub account rather than a corporate/enterprise
75+
> one so maintainers can push commits to your branch.
76+
> **Pull requests from protected forks will not be accepted.**
77+
78+
```sh
79+
git clone https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation.git
80+
```
81+
82+
Navigate to the repo root:
83+
84+
```sh
85+
cd opentelemetry-dotnet-instrumentation
86+
```
87+
88+
Add your fork as an origin:
89+
90+
```sh
91+
git remote add fork https://github.com/YOUR_GITHUB_USERNAME/opentelemetry-dotnet-instrumentation.git
92+
```
93+
94+
Check out a new branch, make modifications and push the branch to your fork:
95+
96+
```sh
97+
$ git checkout -b feature
98+
# change files
99+
# Test your changes locally.
100+
$ nuke Workflow
101+
$ git add my/changed/files
102+
$ git commit -m "short description of the change"
103+
$ git push fork feature
104+
```
105+
106+
Open a pull request against the main `opentelemetry-demo` repo.
107+
108+
### How to Receive Comments
109+
110+
* If the PR is not ready for review, please mark it as
111+
[`draft`](https://github.blog/2019-02-14-introducing-draft-pull-requests/).
112+
* Make sure CLA is signed and all required CI checks are clear.
113+
* Submit small, focused PRs addressing a single
114+
concern/issue.
115+
* Make sure the PR title reflects the contribution.
116+
* Write a summary that helps understand the change.
117+
* Include usage examples in the summary, where applicable.
118+
* Include benchmarks (before/after) in the summary, for contributions that are
119+
performance enhancements.
120+
121+
### How to Get PRs Merged
122+
123+
A PR is considered to be **ready to merge** when:
124+
125+
* It has received approval from
126+
[Approvers](https://github.com/open-telemetry/community/blob/main/guides/contributor/membership.md#approver)
127+
/
128+
[Maintainers](https://github.com/open-telemetry/community/blob/main/guides/contributor/membership.md#maintainer).
129+
* Major feedbacks are resolved.
130+
* The documentation and [Changelog](../CHANGELOG.md) have been updated
131+
to reflect the new changes.
132+
133+
Any Maintainer can merge the PR once it is **ready to merge**. Note, that some
134+
PRs may not be merged immediately if the repo is in the process of a release and
135+
the maintainers decided to defer the PR to the next release train.
136+
137+
If a PR has been stuck (e.g. there are lots of debates and people couldn't agree
138+
on each other), the owner should try to get people aligned by:
139+
140+
* Consolidating the perspectives and putting a summary in the PR. It is
141+
recommended to add a link into the PR description, which points to a comment
142+
with a summary in the PR conversation.
143+
* Tagging subdomain experts (by looking at the change history) in the PR asking
144+
for suggestion.
145+
* Reaching out to more people on the [CNCF OpenTelemetry Automatic
146+
instrumentation for .NET Slack channel](https://cloud-native.slack.com/archives/C01NR1YLSE7).
147+
* Stepping back to see if it makes sense to narrow down the scope of the PR or
148+
split it up.
149+
* If none of the above worked and the PR has been stuck for more than 2 weeks,
150+
the owner should bring it to the OpenTelemetry Automatic Instrumentation SIG
151+
[meeting](README.md#contributing).

0 commit comments

Comments
 (0)