You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -74,7 +74,7 @@ Some projects also have conventions, such as code and Markdown style, how to wri
74
74
75
75
After reading the documentation, you can start looking for issues labeled as "good first issue" or "beginner-friendly" that are suitable for your skill level. When choosing which issues to work on, consider your interests, skill level, and available time.
76
76
77
-
Issues can be seen as proposals for changes. Suppose you want to report a bug or have ideas for a feature or improvement of the project or its documentation and want to propose them. In that case, you can create an issue to propose your intention.
77
+
Issues can be seen as proposals for changes. Suppose you want to report a bug or have ideas for a feature or improvement of the project or its documentation and want to propose them. In that case, you can create an issue to propose your intention. Read [this blog post](https://dev.to/opensauced/streamline-your-contributions-mastering-issue-forms-and-pr-templates-36j5) to learn how to fill in issue forms.
78
78
79
79
In open source, it is crucial to accompany a pull request with an issue for several reasons:
80
80
@@ -102,48 +102,224 @@ You can leave a comment on the issue, like, "Can I please be assigned to this is
102
102
103
103
Once a maintainer has assigned you an issue, the next step is to work on the changes. Here's a general workflow of the process:
104
104
105
-
1.**[Fork the repository](https://docs.github.com/en/get-started/quickstart/fork-a-repo#forking-a-repository)**: Forking a repository means creating a copy of the repository under your GitHub account. It allows you to push changes to the remote codebase without affecting the original project.
105
+
### 1. Fork the Repository
106
106
107
-
2.**[Clone your forked repository](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository#cloning-a-repository)**: Make a copy of your forked repository to your local machine. Run the following command in your terminal:
107
+
[Forking a repository](https://docs.github.com/en/get-started/quickstart/fork-a-repo#forking-a-repository) means creating a copy of the repository under your GitHub account. It allows you to push changes to the remote codebase without affecting the original project.
Replace "YOUR-USERNAME" with your GitHub username and "REPOSITORY-NAME" with the repository's name.
111
+
[Cloning your forked repository](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository#cloning-a-repository) means making a copy of your forked repository to your local machine. Run the following command in your terminal:
114
112
115
-
3.**Create a new branch**: Before making any changes, create a new branch in your local repository to work on your contribution. Creating a new branch is the best practice in open source because it keeps your changes separate from the `main` branch.
You can create a new branch using the following command:
117
+
Replace "YOUR-USERNAME" with your GitHub username and "REPOSITORY-NAME" with the repository's name.
118
118
119
-
```
120
-
git checkout -b YOUR-BRANCH-NAME
121
-
```
119
+
### 3. Create a New Branch
122
120
123
-
Replace "YOUR-BRANCH-NAME" with a descriptive name for your branch, such as "fix-bug-123" or "add-new-feature".
121
+
Before making any changes, create a new branch in your local repository to work on your contribution. Creating a new branch is the best practice in open source because it keeps your changes separate from the `main` branch.
124
122
125
-
4.**Make your changes**: Now that you have a new branch, you can make changes to the codebase. Always follow the project's coding guidelines and conventions, and test your changes to ensure they work as expected.
123
+
You can create a new branch using the following command:
126
124
127
-
5.**Add and commit your changes**: Once you've made your changes, add your changes to the staging area and commit them with these commands:
125
+
```
126
+
git checkout -b YOUR-BRANCH-NAME
127
+
```
128
128
129
-
```
130
-
git add .
131
-
git commit -m "Your commit message"
132
-
```
129
+
Replace "YOUR-BRANCH-NAME" with a descriptive name for your branch, such as "fix-bug-123" or "add-new-feature".
133
130
134
-
Replace `"Your commit message"` with a brief description of your changes.
131
+
### 4. Make Changes
135
132
136
-
6.**Push your changes**: Push your changes to your forked repository on GitHub by running the following command:
133
+
Now that you have a new branch, you can make changes to the codebase. Always follow the project's coding guidelines and conventions.
137
134
135
+
### 5. Run the Changes Locally
136
+
137
+
You should always run and check your changes in your local environment, regardless of how small they are. This is important to ensure they work as expected and won't break production.
138
+
139
+
You can find the instructions on how to run a project locally in the README file or in the contributing guidelines.
140
+
141
+
### 6. Add and Commit the Changes
142
+
143
+
Once you've made your changes, add your changes to the staging area and commit them with these commands:
144
+
145
+
```
146
+
git add .
147
+
git commit -m "Your commit message"
148
+
```
149
+
150
+
Replace `"Your commit message"` with a brief description of your changes.
151
+
152
+
### 7. Push the Changes
153
+
154
+
Push your changes to your forked repository on GitHub by running the following command:
155
+
156
+
```
157
+
git push origin YOUR-BRANCH-NAME
158
+
```
159
+
160
+
Replace "YOUR-BRANCH-NAME" with the name of your branch.
161
+
162
+
### 8. Working with a Pull Request
163
+
164
+
#### Create a Pull Request
165
+
166
+
Once you've pushed your changes, you can now [create a pull request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork). To create a pull request:
167
+
168
+
1. Navigate to the original project's repository on GitHub.
169
+
2. Click the "Compare & pull request" button.
170
+
3. Fill in all required information in the template.
171
+
4. Click the "Create pull request" button.
172
+
173
+
#### Fill In a Pull Request Template
174
+
175
+
Most projects provided a pull request template that is shown and needs to be filled in Markdown. This template guides you in providing all the information maintainers need to review your pull request.
176
+
177
+
##### Tips to Fill In a Pull Request Template
178
+
179
+
It can be challenging to read and fill in a pull request template. Here is some tips on how to fill one:
180
+
181
+
1.**Preview Mode**
182
+
183
+
Click the "Preview" tab to see the sections you must fill in before you do so. It will be easier for you to notice them in this mode, but note that you cannot edit them in preview mode.
184
+
185
+
Here is an example of a pull request template at OpenSauced in preview mode:
186
+
187
+

188
+
189
+
2.**Headings**
190
+
191
+
Get back to the writing mode by clicking the "Write" tab. Pay attention to the headings with `#` symbols. You need to provide information right under these headings.
192
+
193
+
3.**Comments**
194
+
195
+
The instructions on what information you must provide are usually written in the comments under each heading. You need to read and follow all instructions thoroughly.
196
+
197
+
?> **Tip:** When filling in the information, write it below the comment so you can still see and follow the instructions.
198
+
199
+
Here is the template in Markdown. Now, pay attention to the headings and the comments as we discussed:
200
+
201
+
```markdown
202
+
## Description
203
+
204
+
<!--
205
+
Please do not leave this blank
206
+
This PR [adds/removes/fixes/replaces] the [feature/bug/etc].
207
+
-->
208
+
209
+
## Related Tickets & Documents
210
+
211
+
<!--
212
+
Please use this format link issue numbers: Fixes #123
Please provide some steps for the reviewer to test your change. If you have wrote tests, you can mention that here instead.
224
+
225
+
1. Click a link
226
+
2. Do this thing
227
+
3. Validate you see the thing working
228
+
-->
229
+
230
+
## Tier (staff will fill in)
231
+
232
+
- [ ] Tier 1
233
+
- [ ] Tier 2
234
+
- [ ] Tier 3
235
+
- [ ] Tier 4
236
+
237
+
## [optional] What gif best describes this PR or how it makes you feel?
238
+
239
+
<!-- note: PRs with deleted sections will be marked invalid -->
240
+
241
+
<!--
242
+
For Work In Progress Pull Requests, please use the Draft PR feature,
243
+
see https://github.blog/2019-02-14-introducing-draft-pull-requests/ for further details.
244
+
245
+
For a timely review/response, please avoid force-pushing additional
246
+
commits if your PR already received reviews or comments.
247
+
248
+
Before submitting a Pull Request, please ensure you've done the following:
249
+
- 📖 Read the Open Sauced Contributing Guide: https://github.com/open-sauced/.github/blob/main/CONTRIBUTING.md.
250
+
- 📖 Read the Open Sauced Code of Conduct: https://github.com/open-sauced/.github/blob/main/CODE_OF_CONDUCT.md.
251
+
- 👷♀️ Create small PRs. In most cases, this will be possible.
252
+
- ✅ Provide tests for your changes.
253
+
- 📝 Use descriptive commit messages.
254
+
- 📗 Update any related documentation and include any relevant screenshots.
255
+
-->
138
256
```
139
-
git push origin YOUR-BRANCH-NAME
140
-
```
141
257
142
-
Replace "YOUR-BRANCH-NAME" with the name of your branch.
258
+
4.**Don't skip and delete anything in the template**
259
+
260
+
What's important is that you must fill in every section in the template that doesn't say "optional" or doesn't mean for the core team or staff to fill in. Also, you must never delete or modify the template, even if you think a section doesn't apply to your contribution.
261
+
262
+
If a section is irrelevant to your changes, leave a comment explaining why it's irrelevant or provide a brief "N/A" response. If you still need help with what to fill in, look at the previous pull requests and see how other contributors have done that.
263
+
264
+
##### Required Information to Provide in Most Pull Request Templates
265
+
266
+
Every project is unique. Each has its own pull request template structure and requires specific information to be provided. However, all projects typically require the following:
267
+
268
+
-**Title**
269
+
270
+
Add a short and clear title that describes the change that you make. For example, "Fix: Color contrast in the landing page".
271
+
272
+
-**Description**
273
+
274
+
Explain your changes in as much detail as possible. What did you fix? How did you fix it? Did you add a new function or modify a function? If there are several changes, consider using bullet points and providing links to the resources you use to back up your changes.
275
+
276
+
Here is an example:
143
277
144
-
7.**[Create a pull request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork)**: Once you've pushed your changes, navigate to the original project's repository on GitHub and click the "Compare & pull request" button. Fill in the required information and submit your pull request by clicking the "Create pull request" button.
278
+
```markdown
279
+
## Description
145
280
146
-
8.**Respond to feedback**: After submitting your pull request, the project maintainers may provide feedback or request changes. Be sure to respond promptly and address any concerns or suggestions they may have.
281
+
<!--
282
+
Please do not leave this blank
283
+
This PR [adds/removes/fixes/replaces] the [feature/bug/etc].
284
+
-->
285
+
286
+
This PR fixes the long repos' names that are partially stacked at the back of another name in the search input of the Explore tab.
287
+
288
+
The changes made here:
289
+
290
+
- Add Tailwind className:
291
+
292
+
- [`truncate`](https://tailwindcss.com/docs/text-overflow#truncate) to truncate overflowing text.
293
+
- [`tracking-tighter`](https://tailwindcss.com/docs/letter-spacing) to reduce letter spacing for better space.
294
+
- `inline-block` to the `<span>` .
295
+
296
+
- Remove Tailwind classNames:
297
+
298
+
- `overflow-hidden` as it's [included in the `truncate`](https://tailwindcss.com/docs/text-overflow).
299
+
- `break-all` as we don't want to add line breaks.
300
+
```
301
+
302
+
-**Related issue(s)**
303
+
304
+
Most projects don't receive unsolicited pull requests (pull requests that are not accompanied by an issue). One reason is to avoid spam pull requests that might introduce irrelevant, low-quality, or harmful changes to the project's codebase.
305
+
306
+
So, when you create a pull request, you want to include the related issue number. Add the keyword "Closes," "Fixes," or "Resolves" in front of the issue number, for example, "Closes #123".
307
+
308
+
[Linking a pull request](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue) to an issue will automatically close the issue once the pull request gets merged.
309
+
310
+
You can find the issue number right after the title, as shown below.
!> Only add the [supported keyword](https://docs.github.com/en/free-pro-team@latest/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword) and the issue number here. Adding more words will prevent the issue from being closed automatically.
315
+
316
+
-**Screenshots or screen recordings**
317
+
318
+
If your changes relate to UI improvement, consider adding screenshots or screen recordings to show the before-and-after changes.
319
+
320
+
### 9. Respond to Feedback
321
+
322
+
After submitting your pull request, the project maintainers may provide feedback or request changes. Be sure to respond promptly and address any concerns or suggestions they may have.
147
323
148
324
By following these steps, you'll be able to submit your contributions to open source projects and collaborate with other developers to improve the codebase.
149
325
@@ -172,14 +348,17 @@ You'll need to have these tools donwloaded and installed on your local machine:
172
348
### Getting Started
173
349
174
350
1. Create an issue by following these instructions:
351
+
175
352
- Click the "Issues" tab on the top bar.
176
353
- Click the green "New issue" button at the top right.
177
354
- Click the "Get started" button to add contributors.
178
355
- Add a title, e.g., `Feature: Add @GITHUB-USERNAME as a contributor`. <br> Change "@GITHUB-USERNAME" to your GitHub username.
179
-
- Complete the form. You can refer to the example in each textarea to fill them in, as shown in the screenshot below with the red line.
356
+
- Complete the form. Read the instructions under each input label and fill in the textareas using the example shown in the screenshot below with the red line.
2. Fork the [guestbook repository](https://github.com/open-sauced/guestbook).
184
363
3. Clone your forked repository to your computer.
185
364
4. Run `npm install` to install the dependencies.
@@ -211,9 +390,9 @@ You'll need to have these tools donwloaded and installed on your local machine:
211
390
git push -u origin branch-name
212
391
```
213
392
214
-
11. Go to your forked repository on GitHub. Create a pull request with the title `feat: Add <@github-username> as a contributor` and fill in all areas in the pull request form.
393
+
11. Go to your forked repository on GitHub. Create a pull request with the title `feat: Add <@github-username> as a contributor` and fill in all areas in the pull request template. Read the [Fill In a Pull Request Template](#fill-in-a-pull-request-template) section to help you complete the template.
215
394
216
-
!> Your pull request will be marked as invalid and may be closed if the form is incomplete.
395
+
!> Your pull request will be marked as invalid and may be closed if the template is incomplete.
0 commit comments