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
0
140
Your first PR: contributing to open-source software
Lightning talk given to NomadPHP EU May 2016.
Gareth Ellis
May 19, 2016
Tweet
Share
More Decks by Gareth Ellis
See All by Gareth Ellis
Introduction to SOLID - PHP UK 2017
garethellis36
0
140
Introduction to SOLID - PHPOxford
garethellis36
0
160
Write more expressive tests with Hamcrest
garethellis36
0
39
Write more expressive tests with Hamcrest PHP
garethellis36
0
110
Other Decks in Technology
See All in Technology
Datadogとともにオブザーバビリティを布教しよう
mego2221
0
130
SCSAから学ぶセキュリティ管理
masakamayama
0
140
Postmanを使いこなす!2025年ぜひとも押さえておきたいPostmanの10の機能
nagix
2
120
TAMとre:Capセキュリティ編 〜拡張脅威検出デモを添えて〜
fujiihda
1
110
リアルタイム分析データベースで実現する SQLベースのオブザーバビリティ
mikimatsumoto
0
950
これからSREになる人と、これからもSREをやっていく人へ
masayoshi
6
4.1k
WAF に頼りすぎない AWS WAF 運用術 meguro sec #1
izzii
0
460
ビジネスと現場活動をつなぐソフトウェアエンジニアリング~とあるスタートアッププロダクトの成長記録より~
mizunori
0
210
AndroidデバイスにFTPサーバを建立する
e10dokup
0
240
トラシューアニマルになろう ~開発者だからこそできる、安定したサービス作りの秘訣~
jacopen
2
1.5k
「海外登壇」という 選択肢を与えるために 〜Gophers EX
logica0419
0
500
SA Night #2 FinatextのSA思想/SA Night #2 Finatext session
satoshiimai
1
100
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
A Philosophy of Restraint
colly
203
16k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
20
2.4k
For a Future-Friendly Web
brad_frost
176
9.5k
Bash Introduction
62gerente
610
210k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Faster Mobile Websites
deanohume
306
31k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
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