Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Your first PR: contributing to open-source soft...
Search
Gareth Ellis
May 19, 2016
Technology
190
0
Share
Your first PR: contributing to open-source software
Lightning talk given to NomadPHP EU May 2016.
Gareth Ellis
May 19, 2016
More Decks by Gareth Ellis
See All by Gareth Ellis
Introduction to SOLID - PHP UK 2017
garethellis36
0
150
Introduction to SOLID - PHPOxford
garethellis36
0
160
Write more expressive tests with Hamcrest
garethellis36
0
64
Write more expressive tests with Hamcrest PHP
garethellis36
0
170
Other Decks in Technology
See All in Technology
さきさん文庫の書籍ができるまで
sakiengineer
0
330
Gradle×GitHub_ActionsでCI時間を約50%短縮 ジョブ分割の設計と落とし穴 / Cutting CI Time by ~50% with Gradle and GitHub Actions: Job-Splitting Design and Pitfalls
takatty
0
600
速さだけじゃない! VoidZero ツールが移行先に選ばれる理由
mizdra
PRO
6
730
Mastering Ruby Box
tagomoris
3
130
AIを「創る」と「使う」の循環 — HRテックが実践するリアルなAI組織実装
taketo957
0
430
Chart.js が簡単に使えるようになっていたので OGP 画像生成に使った話
kamekyame
0
130
新規ゲーム開発におけるAI駆動開発のリアル
202409e2
0
1.5k
美味しいスイスチーズを作ろう🧀🐭
taigamikami
1
220
BigQuery の Cross-cloud Lakehouse への歩み
phaya72
2
330
AI Engineering Summit Tokyo 2026 AIの前に、やることがある 〜医療データ企業の4フェーズ〜
dtaniwaki
0
750
【Gen-AX】20260530開催_JJUG CCC 2026 Spring
genax
0
320
製造業のクラウド活用最適解〜AI,DXを加速するデータ基盤の作り方〜
hamadakoji
0
280
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
50
15k
From π to Pie charts
rasagy
0
200
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
410
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
310
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
460
YesSQL, Process and Tooling at Scale
rocio
174
15k
Heart Work Chapter 1 - Part 1
lfama
PRO
7
36k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
520
Discover your Explorer Soul
emna__ayadi
2
1.1k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
230
Side Projects
sachag
455
43k
Transcript
Your first PR: contribu0ng to open-‐source projects Gareth Ellis
(@garethellis) Developer, Language Services, ICON plc For NomadPHP, May 2016
Who am I? • Developer, Language Services group,
ICON plc • Professional developer since 2013 • Co-‐founder/organizer PHPOxford • Occasional contributor to open-‐ source projects
Why should I contribute?
Give something back It’s the circle of life open-‐source
soZware
Self-‐improvement Exposure yourself to new codebases, techniques and pa]erns.
Fun! “It’s good for the soul” Nils Luxton
(@nilsluxton)
What can I contribute?
Iden0fy a project What do you use regularly that
could benefit from some improvements?
Types of contribu0on Submit an issue on Github
Answer a ques0on on StackOverflow Documenta0on Blog post Code!
Contribu0ng to source code Changes can be big or
small
Contribu0ng to source code The project may have already
iden0fied a gap – can you help?
How do I contribute?
Before you begin! Consider discussing what you want to
change with the project maintainers.
CONTRIBUTING.md Read the contribu0ng guidelines.
The process! 1. Fork 2. Clone 3.
Branch 4. Change 5. Commit 6. Push 7. Submit Pull Request 8. Review
Fork
Clone $ git clone
[email protected]
:garethellis36/cakephp.git $ cd cakephp
$ composer install
Clone (2) $ git remote add upstream
[email protected]
:cakephp/cakephp.git
Branch $ git checkout –b my-‐awesome-‐new-‐feature
Make your changes Follow contribu0on guidelines Write tests
as necessary
Commit and push $ git add src/Folder/AnotherFolder/ChangedFile.php $
git commit –m “Here’s a descrip0on of this awesome new feature” $ git push –u origin my-‐awesome-‐new-‐feature
Submit the Pull Request! Screenshot used with permission of
Rob Allen
Submit the Pull Request! (2) Screenshot used with permission
of Rob Allen
Review Discuss your PR with the project maintainers
Make changes if necessary To add changes to your PR, simply change, commit & push
Further reading: Find projects to contribute to:
h]ps://yourfirstpr.github.io/ h]p://issuehub.io/ h]p://up-‐for-‐grabs.net/ Joind.in: h]ps://joind.in/about h]ps://akrabat.com/the-‐beginners-‐guide-‐to-‐contribu0ng-‐to-‐a-‐github-‐project/ (Rob Allen) h]p://www.lornajane.net/posts/2015/code-‐reviews-‐before-‐you-‐even-‐run-‐the-‐code (Lorna Mitchell)
Thanks for listening. h]ps://joind.in/talk/c5551
[email protected]
@garethellis h]ps://blog.garr.co.uk