SlideShare a Scribd company logo
Y E S , Y O U C A N G I T !
I N T R O D U C T I O N T O G I T A N D G I T H U B
Carol Willing
@willingcarol
GitHub: willingc
W R I T E S P E A K C O D E
J U N E 1 7 , 2 0 1 6
– M A RY O L I V E R
“It’s not a competition, it’s a doorway.”
C H AT T I N G
W I T H F R I E N D S
• git
• a tool
• puts you in charge of
source files
• GitHub
• a service
• sharing and collaboration
C A L M
N A M I N G P L A C E S
L O C A L ( Y O U A R E H E R E ) , O R I G I N , U P S T R E A M
L O C A L
( Y O U A R E H E R E )
O R I G I N
( Y O U I N T H E C L O U D )
U P S T R E A M
( S O M E W H E R E E L S E I N T H E C L O U D )
L O C A L
( g i t )
O R I G I N
( y o u o n G i t H u b )
U P S T R E A M
( o p e n s o u rc e p ro j e c t o n G i t H u b )
L O C A L
( g i t )
O R I G I N
( y o u o n G i t H u b )
U P S T R E A M
( o p e n s o u rc e p ro j e c t o n G i t H u b )
remote
P E A C E F U L
G E T T I N G S TA R T E D
S E T T I N G U P T O C O N T R I B U T E T O A N O P E N S O U R C E P R O J E C T
Fork
an open source project
Fork
Copies source from
upstream to origin
Fork
an open source project
O R I G I N
( y o u o n G i t H u b )
U P S T R E A M
( o p e n s o u rc e p ro j e c t o n G i t H u b )
Click
Clone
your fork of an open source project
to your local computer
git clone <url>
git status
git remote -v
Add a remote
Let’s create a nickname of the open source project.
upstream sounds like a good nickname.
git remote -v
git remote add upstream <url>
git remote -v
Fork
an open source project
Clone
your fork
of an open source project
~/myprojects/wsc-music
https://github.com/<you>/wsc-music
https://github.com/gentlecodegarden/wsc-music
R E V I E W
C O N F I D E N T
C R E AT I N G
L E T ’ S M A K E S O M E T H I N G F O R T H E P R O J E C T
fetch, rebase, push
my workflow for keeping things updated
git fetch upstream
git rebase upstream/master
git push origin master
branch, checkout
A feature branch keeps your new contribution neat and tidy.
Doing work on a feature branch helps avoid merge headaches later.
git branch new-feature
git checkout new-feature
git checkout -b new-feature
git status
Pro tip: use it often.
git status
git add
Adds file(s) to the staging area to keep ready before committing changes.
Real world analogy: Boarding an airplane
git add <file(s)>
git status
git commit
Commit file(s) in the staging area to the repo history.
Real world analogy: Airplane takes off with all its passengers
git commit -m'Add commit message.'
git status
git log
Note: The commit exists in the local repo only at this point.
git push
Shares the local commit with a remote repo.
git push origin new-feature
Note: You must have "push" privileges to push to a remote repo.
Another feature
Update the local repo with upstream changes.
Create a new feature branch. Update the origin repo.
git checkout master
git checkout -b another-feature
git fetch upstream
git rebase upstream/master
git push origin another-feature
git add <files>
git commit -m"Add commit message"
git status
git log
git fetch upstream
git rebase upstream/master
git push origin another-feature
• Add changed files to staging area of
local repo.
• Commit changed files to local branch
and repo.
• Update (fetch and rebase) the local repo
with any upstream changes.
• Push feature branch to the origin repo.
Another feature: add, commit, fetch, rebase, push
– A N O N Y M O U S W S C A L U M N I
“Wow! Write, Speak, Code changes lives.
Remember you can go at your pace, ask questions,
make mistakes, learn, and have fun too. Believe.”
C O N T R I B U T E
Y O U R I D E A S M A T T E R . S H A R E T H E M . S U B M I T A P U L L R E Q U E S T.
Fact: Some projects are more welcoming and encouraging than others.
Myth: Your talent, potential, and future success are defined by a maintainer’s
response to your pull request.
Fact: Your PR may be rejected.
Fact: You may need to make changes based on constructive review
comments.
Myth: Maintainers are entitled to belittle a pull request or be crummy to you.
Fact: It’s not you. It’s them. And their loss. Find another project that values
your contribution.
L E T ’ S M A K E A P U L L R E Q U E S T
P re s s T h e P u l l R e q u e s t B u t t o n
C O N T R I B U T E A P R
Wr i t e A M e s s a g e A n d S u b m i t
C O N T R I B U T E A P R
T h e S u b m i t t e d P u l l R e q u e s t
C O N T R I B U T E A P R
P R O U D
P a t i e n c e . M a i n t a i n e r c o m m e n t s o n P R .
M A I N TA I N E R R E V I E W S T H E P R
C o n g r a t u l a t i o n s O n Yo u r C o n t r i b u t i o n !
M A I N TA I N E R M E R G E S T H E P R
Y E S , Y O U C A N G I T !
Y O U D I D I T !
Thank you.
P H O T O S :
C A R O L W I L L I N G , L I N N E A W I L L I N G
Y E S , Y O U C A N G I T !
I N T R O D U C T I O N T O G I T A N D G I T H U B
Carol Willing
@willingcarol
GitHub: willingc
W R I T E S P E A K C O D E
J U N E 1 7 , 2 0 1 6

More Related Content

PDF
Challenging Your Assumptions
PPT
Top ten slide tips
PDF
AWS Lambda, WTF
PDF
AWS Lambda, WTF : I secretly hate you
PDF
Adding Source Control to Your Life
PDF
KR2016 The Free Software Bastard Guide
PPTX
The most influential vizzes of all time (#SXSW)
PDF
Ankara jug mayıs 2013 sunumu
Challenging Your Assumptions
Top ten slide tips
AWS Lambda, WTF
AWS Lambda, WTF : I secretly hate you
Adding Source Control to Your Life
KR2016 The Free Software Bastard Guide
The most influential vizzes of all time (#SXSW)
Ankara jug mayıs 2013 sunumu

What's hot (20)

PDF
떠먹는 '오브젝트' Ch02 객체지향 프로그래밍
PDF
Testing Grails 3, the goob (unit), the bad (integration) and the ugly (functi...
KEY
Online scavenger
PDF
Berlinsides2017
PDF
Docker Testing
PDF
Continuous Delivery As Code
PDF
Geb for browser automation
PDF
Git branching model_for_tap_team
ODP
Sign up github
PDF
react.js - DOM as it was meant
PPT
Luke's Prosthetics Presentation, 5th
PPT
WTF Is the Semantic Web? Ignite
PPT
WTF Is the Semantic Web? - Greg Elin
PPT
Effective Git - EclipseCon 2011 tutorial
PDF
Drupal 8.3.0: the features are ready, are you?
PPTX
GitHub: The Good Parts
PDF
Upgrade to Plone 5
PDF
JavaCro 2016 - Testing with Spock: The Logical choice
PPTX
Knowledge Graph and Authorrank iss smx
PDF
GREAT STEP 1. 테스트 코드를 향한 위대한 발걸음
떠먹는 '오브젝트' Ch02 객체지향 프로그래밍
Testing Grails 3, the goob (unit), the bad (integration) and the ugly (functi...
Online scavenger
Berlinsides2017
Docker Testing
Continuous Delivery As Code
Geb for browser automation
Git branching model_for_tap_team
Sign up github
react.js - DOM as it was meant
Luke's Prosthetics Presentation, 5th
WTF Is the Semantic Web? Ignite
WTF Is the Semantic Web? - Greg Elin
Effective Git - EclipseCon 2011 tutorial
Drupal 8.3.0: the features are ready, are you?
GitHub: The Good Parts
Upgrade to Plone 5
JavaCro 2016 - Testing with Spock: The Logical choice
Knowledge Graph and Authorrank iss smx
GREAT STEP 1. 테스트 코드를 향한 위대한 발걸음
Ad

Similar to Yes, you can git! (20)

PPTX
Understanding Github and Version Control System.pptx
PDF
Git, GitHub and Open Source
PPTX
GIT AND GITHUB (1).pptx
PDF
Git hub party-20151008
PDF
Github introduction for W3C WCAG WG and EOWG
PPTX
3DC Intro to Git Workshop
PPTX
Get your Git on GitHub
PPTX
Basics of Open Source Contribution - WWCodeMobile
PDF
O'Leary - Using GitHub for Enterprise and Open Source Documentation
PPTX
Git, github and the hacktober fest
PDF
git and github
PPTX
tech winter break workshop on git &git hub.pptx
PPTX
Git and GitHub (1).pptx
PPT
ODP
Git tech talk
PDF
Version Control Systems Software Engineering
PPTX
Introduction to Git and Github
PPTX
Git Tutorials Git vs GitHub.pptx
PDF
GDSC GIT AND GITHUB
PPTX
Hacktoberfest 2020 - Open source for beginners
Understanding Github and Version Control System.pptx
Git, GitHub and Open Source
GIT AND GITHUB (1).pptx
Git hub party-20151008
Github introduction for W3C WCAG WG and EOWG
3DC Intro to Git Workshop
Get your Git on GitHub
Basics of Open Source Contribution - WWCodeMobile
O'Leary - Using GitHub for Enterprise and Open Source Documentation
Git, github and the hacktober fest
git and github
tech winter break workshop on git &git hub.pptx
Git and GitHub (1).pptx
Git tech talk
Version Control Systems Software Engineering
Introduction to Git and Github
Git Tutorials Git vs GitHub.pptx
GDSC GIT AND GITHUB
Hacktoberfest 2020 - Open source for beginners
Ad

More from Carol Willing (20)

PDF
Interactive Computing in Computer Science
PPTX
Machine Learning and Jupyter
PDF
STEAM Workshops with Binder and JupyterHub
PDF
Learning Python: Tips from Cognitive Science, Jupyter, and Community
PDF
Jupyter and Music
PDF
JupyterHub + kubernetes
PDF
JupyterHub tutorial at JupyterCon
PDF
Python and Jupyter: Your Gateway for Learning
PDF
Jupyter: A Gateway for Scientific Collaboration and Education
PDF
JupyterHub: Learning at Scale
PDF
Journey to Jupyter
PDF
Data, decision making, and being human
PDF
JupyterHub - A "Thing Explainer" Overview
PDF
JupyterHub - A "Thing Explainer" Overview
PDF
JupyterHub for Interactive Data Science Collaboration
PDF
JupyterHub, User Groups, and You
PDF
Python - The People's Programming Language
PDF
Finding your groove
PPTX
2014 06 16_wearables_sdmakers
PDF
2014 01 23_pyladies_san diego python user group
Interactive Computing in Computer Science
Machine Learning and Jupyter
STEAM Workshops with Binder and JupyterHub
Learning Python: Tips from Cognitive Science, Jupyter, and Community
Jupyter and Music
JupyterHub + kubernetes
JupyterHub tutorial at JupyterCon
Python and Jupyter: Your Gateway for Learning
Jupyter: A Gateway for Scientific Collaboration and Education
JupyterHub: Learning at Scale
Journey to Jupyter
Data, decision making, and being human
JupyterHub - A "Thing Explainer" Overview
JupyterHub - A "Thing Explainer" Overview
JupyterHub for Interactive Data Science Collaboration
JupyterHub, User Groups, and You
Python - The People's Programming Language
Finding your groove
2014 06 16_wearables_sdmakers
2014 01 23_pyladies_san diego python user group

Recently uploaded (20)

DOCX
The Five Best AI Cover Tools in 2025.docx
PDF
AI in Product Development-omnex systems
PPTX
history of c programming in notes for students .pptx
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PPTX
Operating system designcfffgfgggggggvggggggggg
PPTX
ISO 45001 Occupational Health and Safety Management System
PPTX
Materi-Enum-and-Record-Data-Type (1).pptx
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
System and Network Administraation Chapter 3
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PDF
PTS Company Brochure 2025 (1).pdf.......
PDF
System and Network Administration Chapter 2
The Five Best AI Cover Tools in 2025.docx
AI in Product Development-omnex systems
history of c programming in notes for students .pptx
Design an Analysis of Algorithms I-SECS-1021-03
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Upgrade and Innovation Strategies for SAP ERP Customers
Operating system designcfffgfgggggggvggggggggg
ISO 45001 Occupational Health and Safety Management System
Materi-Enum-and-Record-Data-Type (1).pptx
How to Choose the Right IT Partner for Your Business in Malaysia
VVF-Customer-Presentation2025-Ver1.9.pptx
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Internet Downloader Manager (IDM) Crack 6.42 Build 41
System and Network Administraation Chapter 3
Which alternative to Crystal Reports is best for small or large businesses.pdf
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
How to Migrate SBCGlobal Email to Yahoo Easily
PTS Company Brochure 2025 (1).pdf.......
System and Network Administration Chapter 2

Yes, you can git!

  • 1. Y E S , Y O U C A N G I T ! I N T R O D U C T I O N T O G I T A N D G I T H U B Carol Willing @willingcarol GitHub: willingc W R I T E S P E A K C O D E J U N E 1 7 , 2 0 1 6
  • 2. – M A RY O L I V E R “It’s not a competition, it’s a doorway.”
  • 3. C H AT T I N G W I T H F R I E N D S • git • a tool • puts you in charge of source files • GitHub • a service • sharing and collaboration
  • 4. C A L M
  • 5. N A M I N G P L A C E S L O C A L ( Y O U A R E H E R E ) , O R I G I N , U P S T R E A M
  • 6. L O C A L ( Y O U A R E H E R E ) O R I G I N ( Y O U I N T H E C L O U D ) U P S T R E A M ( S O M E W H E R E E L S E I N T H E C L O U D )
  • 7. L O C A L ( g i t ) O R I G I N ( y o u o n G i t H u b ) U P S T R E A M ( o p e n s o u rc e p ro j e c t o n G i t H u b )
  • 8. L O C A L ( g i t ) O R I G I N ( y o u o n G i t H u b ) U P S T R E A M ( o p e n s o u rc e p ro j e c t o n G i t H u b ) remote
  • 9. P E A C E F U L
  • 10. G E T T I N G S TA R T E D S E T T I N G U P T O C O N T R I B U T E T O A N O P E N S O U R C E P R O J E C T
  • 11. Fork an open source project Fork Copies source from upstream to origin
  • 12. Fork an open source project O R I G I N ( y o u o n G i t H u b ) U P S T R E A M ( o p e n s o u rc e p ro j e c t o n G i t H u b ) Click
  • 13. Clone your fork of an open source project to your local computer git clone <url> git status git remote -v
  • 14. Add a remote Let’s create a nickname of the open source project. upstream sounds like a good nickname. git remote -v git remote add upstream <url> git remote -v
  • 15. Fork an open source project Clone your fork of an open source project ~/myprojects/wsc-music https://github.com/<you>/wsc-music https://github.com/gentlecodegarden/wsc-music R E V I E W
  • 16. C O N F I D E N T
  • 17. C R E AT I N G L E T ’ S M A K E S O M E T H I N G F O R T H E P R O J E C T
  • 18. fetch, rebase, push my workflow for keeping things updated git fetch upstream git rebase upstream/master git push origin master
  • 19. branch, checkout A feature branch keeps your new contribution neat and tidy. Doing work on a feature branch helps avoid merge headaches later. git branch new-feature git checkout new-feature git checkout -b new-feature
  • 20. git status Pro tip: use it often. git status
  • 21. git add Adds file(s) to the staging area to keep ready before committing changes. Real world analogy: Boarding an airplane git add <file(s)> git status
  • 22. git commit Commit file(s) in the staging area to the repo history. Real world analogy: Airplane takes off with all its passengers git commit -m'Add commit message.' git status git log Note: The commit exists in the local repo only at this point.
  • 23. git push Shares the local commit with a remote repo. git push origin new-feature Note: You must have "push" privileges to push to a remote repo.
  • 24. Another feature Update the local repo with upstream changes. Create a new feature branch. Update the origin repo. git checkout master git checkout -b another-feature git fetch upstream git rebase upstream/master git push origin another-feature
  • 25. git add <files> git commit -m"Add commit message" git status git log git fetch upstream git rebase upstream/master git push origin another-feature • Add changed files to staging area of local repo. • Commit changed files to local branch and repo. • Update (fetch and rebase) the local repo with any upstream changes. • Push feature branch to the origin repo. Another feature: add, commit, fetch, rebase, push
  • 26. – A N O N Y M O U S W S C A L U M N I “Wow! Write, Speak, Code changes lives. Remember you can go at your pace, ask questions, make mistakes, learn, and have fun too. Believe.”
  • 27. C O N T R I B U T E Y O U R I D E A S M A T T E R . S H A R E T H E M . S U B M I T A P U L L R E Q U E S T.
  • 28. Fact: Some projects are more welcoming and encouraging than others. Myth: Your talent, potential, and future success are defined by a maintainer’s response to your pull request. Fact: Your PR may be rejected. Fact: You may need to make changes based on constructive review comments. Myth: Maintainers are entitled to belittle a pull request or be crummy to you. Fact: It’s not you. It’s them. And their loss. Find another project that values your contribution. L E T ’ S M A K E A P U L L R E Q U E S T
  • 29. P re s s T h e P u l l R e q u e s t B u t t o n C O N T R I B U T E A P R
  • 30. Wr i t e A M e s s a g e A n d S u b m i t C O N T R I B U T E A P R
  • 31. T h e S u b m i t t e d P u l l R e q u e s t C O N T R I B U T E A P R
  • 32. P R O U D
  • 33. P a t i e n c e . M a i n t a i n e r c o m m e n t s o n P R . M A I N TA I N E R R E V I E W S T H E P R
  • 34. C o n g r a t u l a t i o n s O n Yo u r C o n t r i b u t i o n ! M A I N TA I N E R M E R G E S T H E P R
  • 35. Y E S , Y O U C A N G I T ! Y O U D I D I T !
  • 36. Thank you. P H O T O S : C A R O L W I L L I N G , L I N N E A W I L L I N G
  • 37. Y E S , Y O U C A N G I T ! I N T R O D U C T I O N T O G I T A N D G I T H U B Carol Willing @willingcarol GitHub: willingc W R I T E S P E A K C O D E J U N E 1 7 , 2 0 1 6