!
slides: bit.ly/mentoredgit
Getting started with Git
Mentored Sprints for Diverse
Beginners
#MentoredSprint
#PyCon2019
@nnja
Slide 2
Slide 2 text
Cloning Today
For slow conference wifi, clone like this:
git clone --depth 1 https://github.com/django/
django.git
@nnja
Slide 3
Slide 3 text
Prerequisites:
4 a GitHub.com account
4 Please log in.
4 git installed locally
4 In your terminal program, typing git version
should return a number.
@nnja
Slide 4
Slide 4 text
git vs GitHub
@nnja
Slide 5
Slide 5 text
What makes a folder a "git
repository?"
Only one thing -- the existence of a .git directory.
Once this directory is present, you'll be able to run the
git status command.
@nnja
Slide 6
Slide 6 text
Forks
!
4 Since you want to contribute back, we'll make a
"fork".
4 A "fork" is our local copy of the source code.
@nnja
Slide 7
Slide 7 text
Fork Demo
@nnja
Slide 8
Slide 8 text
Cloning
4 Once you've made a fork, let's clone it locally.
4 Grab the URL from GitHub
4 Run git clone , just paste it in!
@nnja
Commits
4 Mark the files you're ready to share
4 A specific file
4 git add
4 All the change
4 git add .
4 git commit -m "message"
@nnja
Slide 14
Slide 14 text
Destructive Operations
4 Be careful running this!
4 It will delete your changes.
4 git checkout --
4 You won't be able to get them back
@nnja
Slide 15
Slide 15 text
Stash
4 A stash is a safe place to temporarily store your changes
4 Only stash files git knows about:
4 git stash
4 Include files git doesn't know about:
4 git stash --include-untracked
4 Bring your changes back
4 git stash apply
@nnja
Slide 16
Slide 16 text
Branching
@nnja
Slide 17
Slide 17 text
4 Make a new branch:
4 git branch
4 "Checking out" a different branch
4 git checkout
@nnja
Slide 18
Slide 18 text
Push / Syncing
4 Push to server
4 git push origin my_branch
4 Pull from server
4 git pull
@nnja
Slide 19
Slide 19 text
Logs
4 git log
@nnja
Slide 20
Slide 20 text
Opening a PR Demo
@nnja
Slide 21
Slide 21 text
Need git or GitHub help?
4 Find the git help desk
4 ask your mentors
4 most of all, have fun!
@nnja