Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Collaborating with Git and GitHub - Girl Develo...
Search
Steven Loria
October 01, 2018
Programming
0
87
Collaborating with Git and GitHub - Girl Develop It Central VA
Slides for the Git/GitHub workshop for Girl Develop It Central VA
Steven Loria
October 01, 2018
Tweet
Share
More Decks by Steven Loria
See All by Steven Loria
marshmallow for data validation and serialization
sloria
0
460
Other Decks in Programming
See All in Programming
S3 VectorsとStrands Agentsを利用したAgentic RAGシステムの構築
tosuri13
6
330
안드로이드 9년차 개발자, 프론트엔드 주니어로 커리어 리셋하기
maryang
1
120
Navigation 3: 적응형 UI를 위한 앱 탐색
fornewid
1
350
チームをチームにするEM
hitode909
0
340
AIコーディングエージェント(Gemini)
kondai24
0
240
LLMで複雑な検索条件アセットから脱却する!! 生成的検索インタフェースの設計論
po3rin
4
830
dotfiles 式年遷宮 令和最新版
masawada
1
790
令和最新版Android Studioで化石デバイス向けアプリを作る
arkw
0
410
MAP, Jigsaw, Code Golf 振り返り会 by 関東Kaggler会|Jigsaw 15th Solution
hasibirok0
0
250
20251127_ぼっちのための懇親会対策会議
kokamoto01_metaps
2
440
AIの誤りが許されない業務システムにおいて“信頼されるAI” を目指す / building-trusted-ai-systems
yuya4
6
3.7k
JETLS.jl ─ A New Language Server for Julia
abap34
1
420
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
95
14k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
Site-Speed That Sticks
csswizardry
13
1k
Speed Design
sergeychernyshev
33
1.4k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
Side Projects
sachag
455
43k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
980
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Typedesign – Prime Four
hannesfritz
42
2.9k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Transcript
Collaborating with git and GitHub Happy Hacktoberfest!
Set up 4 Create a GitHub account 4 Install and
set up git https://help.github.com/articles/set-up-git/ 4 In Terminal or Powershell: cd ~ mkdir projects cd projects
Welcome! Girl Develop It is here to provide affordable and
accessible programs to learn software through mentorship and hands-on instruction.
Some "rules" 4 We are here for you! 4 Every
question is important 4 Help each other 4 Have fun
Welcome! 4 Who are you? 4 Last meal you made?
4 OPTIONAL: What drew you to take this class?
Collaborating with git and GitHub 4 Distributed version control 4
GitHub 4 Hands-on
git 4 Version control 4 Code provenance
Like infinite save games!!!
None
And each save point tells a story
git is Collaborative
git is Distributed
Centralized vs. Distributed
Centralized
Centralized (svn) 4 Everybody works on same copy of project
4 Saving and sharing happen in the same step
None
Distributed (git)
Distributed VCS (git) 4 Everybody gets a copy 4 Sync
when you want to (merge copies) 4 Separates saving from sharing 4 Bonus: Lots of backups
GitHub
GitHub Where projects and their histories ("repos") are stored
https://github.com/GirlDevelopItCentralVA/gdi- centralva-directory
Workflow
None
Fork Make your copy on GitHub https://github.com/GirlDevelopItCentralVA/gdi- centralva-directory
None
Clone Download your copy from GitHub to your computer
None
$ git clone https://github.com/sloria/gdi-centralva-directory.git $ cd gdi-centralva-directory
None
Remotes
Remotes remote = name for a copy on GitHub Example:
"origin" is the name of the repo you cloned from
List your remotes $ git remote -v origin https://github.com/sloria/gdi-centralva-directory.git (fetch)
origin https://github.com/sloria/gdi-centralva-directory.git (push)
Remotes By convention: 4 "origin" = Your fork (sloria/gdi-centralva-directory) 4
"upstream" = The original version (GirlDevelopItCentralVA/gdi-centralva-directory)
Add a remote Add "upstream" as a remote
None
$ git remote add upstream https://github.com/GirlDevelopItCentralVA/gdi-centralva-directory.git
$ git remote -v origin https://github.com/sloria/gdi-centralva-directory.git (fetch) origin https://github.com/sloria/gdi-centralva-directory.git (push)
upstream https://github.com/GirlDevelopItCentralVA/gdi-centralva-directory.git (fetch) upstream https://github.com/GirlDevelopItCentralVA/gdi-centralva-directory.git (push)
None
Branches
A branch is a storyline
A branch is a storyline Example branch names: "fix-ui-bug", "add-more-docs"
List your branches $ git branch * master
Create a branch $ git branch add-steve-json
$ git branch add-steve-json * master
Switch branches $ git checkout add-steve-json $ git branch *
add-steve-json master
Add a File people/steve-loria.json { "name": "Steve Loria", }
See changed/added files
Stage the file Add file(s) that we want to save
$ git add .
None
Commit Save your changes git commit -m "Add my info"
None
Make more changes people/steve-loria.json { "name": "Steve Loria", "twitter": "sloria1",
"github": "sloria", "personal": "https://stevenloria.com" }
Review your changes
None
Stage the file Add the file $ git add .
None
Commit Save your changes git commit -m "Add more of
my info"
View Commit Logs $ git log
None
Push to your Fork Get your local changes onto your
fork on GitHub $ git push origin add-steve-json
On your fork on GitHub...
Send a Pull Request Request that your changes get incorporated
None
Pulling upstream changes Sync your local repo with other people's
changes $ git pull upstream master
None
Use git for everything
Git is not just for code Writing, data, design projects
Use git when you care about history
Use git for everything
Happy Hacktoberfest!