SlideShare uma empresa Scribd logo
1 de 28
GIT & GITHUB BASICS
GameCraft Training 
Radoslav Georgiev (@Rado_G)
DISCLAIMER
I’m not a Git expert or pro 
Agenda
• Why use Source Control System ?
• How to setup Git and Github on Windows ?
• Terminology
• Repositories 1.0 – git {init, add, commit, push, remote}
• Repositories 2.0 – .gitignore, git {clone, pull, revert, mv,
  rm}
• Fork & Pull + Shared Repos
Why use Source Control Systems ?
          What is ?                     Why use ?



• SCS are a tool that helps   • Keeps the developing
  keeping versions of the       process simple
  code                        • All files are hosted
• SCS allow multiple            (Github)
  developers to work on the   • No nose bleed!
  same code with minimum      • Tons of благинки
  amount of collisions
No Source Control System =
Agenda
• Why use Source Control System ?
• How to setup Git and Github on Windows ?
• Terminology
• Repositories 1.0 – git {init, add, commit, push, remote}
• Repositories 2.0 – .gitignore, git {clone, pull, revert, mv,
  rm}
• Fork & Pull + Shared Repos
How to setup Git and Github on
Windows?
• First of all – create a Github Account
• And second :




• There’s a great guide @ the Github site -
 http://help.github.com/win-set-up-git/
How to setup Git and Github on
Windows? cont’d
• You’ll need msysgit (Linux shell)
• You’ll have to generate an SSH key-pair
   • And think of a passphrase ! <- Important
• You’ll have to add the SHH keys to your Github account
• Then test :   $ ssh –T git@github.com
                some output .. (yes/no)
                $ yes
                Hi username! You‟ve successfully authenticated, but Github
                does not provide shell access.



• gg, wp
And some configuration ^_^
• Name & Email – Github tracks them
$ git config –global user.name “Firstname Lastname”
$ git config –global user.email “email@email.com”



• Github API token
  • On the GitHub site Click “Account Settings” > Click “Account
    Admin.”
$ git config –global github.user username
$ git config –global github.token the_token
DEMO TIME
1) Create a Github account
2) Set up with Windows
Agenda
• Why use Source Control System ?
• How to setup Git and Github on Windows ?
• Terminology
• Repositories 1.0 – git {init, add, commit, push, remote}
• Repositories 2.0 – .gitignore, git {clone, pull, revert, mv,
  rm}
• Fork & Pull + Shared Repos
Some basic Terminology
• git = the shell command to work with Git
• repo = Repository, where the code for a given project is
    kept
•   commit = verb, means push the code to the server (in
    Git, commit = (commit + push)
•   diff = the difference between two versions of a file
•   SSH = Secure SHell – Network protocol for
    communication between machines
•   RSA = Rivest, Shamir, Adleman – public-key
    cryptography algorithm
    $ command
    Output of the command
Agenda
• Why use Source Control System ?
• How to setup Git and Github on Windows ?
• Terminology
• Repositories 1.0 – git {init, add, commit, push,
  remote}
• Repositories 2.0 – .gitignore, git {clone, pull, revert, mv,
  rm}
• Fork & Pull + Shared Repos
Lets create a repo !
• Click on the new repository button in Github
• Start the shell (Git Bash)
• Execute the super-complex command :
  $ git init
  Initialized empty Git repository in c:/code/TestingGithub/.git/


• Great, now we have repo. Lets create a file, shall we ?
  $ touch omgrofl.txt
  $ notepad omgrofl.txt (and add text) or $ echo “rofllol” > omgrofl.txt
  $ cat omgrofl.txt  cat prints to the output
  rofllol
Lets create a repo ! (cont’d)
• Okay, lets add it !

  $ git add omgrofl.txt


• And commit it 
  $ git commit –m „This is a commit message‟
  Some gitorish output

• And for the sake of learning, lets edit it again
  $ echo “roflcopter” >> omgrofl.txt
  $ cat omgrofl.txt
  rofllol
  roflcopter
Lets create a repo ! (cont’d)
• And now, lets see :

  $ git status


• Outputs :
  # On branch master
  # Changes not staged for commit:
  # (use "git add <file>..." to update what will be committed)
  # (use "git checkout -- <file>..." to discard changes in working directory)
  #
  #    modified: omgrofl.txt


• Almost there
  $ git add omgrofl.txt
  $ git status
How it works? Staging area.
What about Github ? Remotes ?
• Okay, you suck, there’s nothing @ Github
• Damn. Enter magic!
  $ git remote add origin git@github.com:UserName/ProjectName.git


• Git commits locally, pushes remotely !!!!!!!
• Add the remote when the repo is created (git init,
 remember ? )
  $ git remote add [name] [url]


• Want to see the remotes ?
  $ git remote -v
What about Github ? Push it up, baby!
• Okay, we have committed and added a remote to Github.
 It’s time to push 
  $ git push origin master
  Enter passphrase ! 

• Open up the repo in Github and enjoy ^_^
• The push command explained :
  $ git push [remote_name] [branch]


• Branches are black magic for later 
• There’s a big chance that the branch you are pushing to
 will be named “master”
Recap ! Creating a repo
• Create a repo
  $ git init



• Add an remote
  $ git remote add origin git@github.com:UserName/ProjectName.git



• Check if directory is a git repo
  $ ls –la
  Search for .git folder
Recap ! The workflow.
• Edit files and check the status
  $ git status

• Add them to the staging area
  $ git add file1.php file2.php file3.php
• Commit the changes
  $ git commit –m „Commit message that explains the changes‟
• Push them to Github
  $ git push origin master
  Enter passphrase!

• Celebrate ! 
DEMO
1) Create yourself a repo (from Github)
2) Add and Commit few files
3) Push them !
4) Repeat 2) and 3) few times
TAKE A BREAK.
We all deserve it 
Agenda
• Why use Source Control System ?
• How to setup Git and Github on Windows ?
• Terminology
• Repositories 1.0 – git {init, add, commit, push, remote}
• Repositories 2.0 – .gitignore, git {clone, pull, revert,
  mv, rm}
• Fork & Pull + Shared Repos
Don’t push your passwords
• Use .gitignore
  $ touch .gitignore
  $ echo “db_config.php” >> .gitignore
  $ git add .gitignore
  $ git push origin master
  Enter passphrase!



• Something missing ?
  $ git commit –m „You are not seeing my passwords!‟
Made a mistake ? No worries
• Unstage something – git reset

$ git add index.php
$ git status
Says it‟s staged. I don‟t want to ! I changed my mind.
$ git reset HEAD – index.php
$ git status
Now I‟m happy ^_^


• Revert a commit ? Reset hard!
 $ git reset –hard HEAD~1
 OR
 $ git reset –hard <commit_id>
Fork time.
• If you want to get a repo – fork is the way.
• Fork on github and then
 $ git clone git@github.com:UserName/ProjectName.git
• This inits a new Git repository!
• You can do everything with the code now – this is a
  separate repository.
• More @ http://help.github.com/fork-a-repo/
Shared repos
• If you are added as a collaborator @ some repo – you
  can do everything (clone, add, commit, push) without
  restrictions.
• Shared repos mean more developers. More Developers =
  more changes.

 $ git pull [remote_name]

• This will pull the latest changes 

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

Git and GitHub
Git and GitHubGit and GitHub
Git and GitHub
 
Git
GitGit
Git
 
Git basics
Git basicsGit basics
Git basics
 
Git - Basic Crash Course
Git - Basic Crash CourseGit - Basic Crash Course
Git - Basic Crash Course
 
Git and GitHub workflows
Git and GitHub workflowsGit and GitHub workflows
Git and GitHub workflows
 
Git training v10
Git training v10Git training v10
Git training v10
 
Git and GitHub
Git and GitHubGit and GitHub
Git and GitHub
 
Git & GitHub WorkShop
Git & GitHub WorkShopGit & GitHub WorkShop
Git & GitHub WorkShop
 
Github - Git Training Slides: Foundations
Github - Git Training Slides: FoundationsGithub - Git Training Slides: Foundations
Github - Git Training Slides: Foundations
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
 
Introduction To Git
Introduction To GitIntroduction To Git
Introduction To Git
 
Git and Github slides.pdf
Git and Github slides.pdfGit and Github slides.pdf
Git and Github slides.pdf
 
Intro to Git and GitHub
Intro to Git and GitHubIntro to Git and GitHub
Intro to Git and GitHub
 
GitHub Presentation
GitHub PresentationGitHub Presentation
GitHub Presentation
 
Git in 10 minutes
Git in 10 minutesGit in 10 minutes
Git in 10 minutes
 
Introduction git
Introduction gitIntroduction git
Introduction git
 
Git hub ppt presentation
Git hub ppt presentationGit hub ppt presentation
Git hub ppt presentation
 
Github
GithubGithub
Github
 
Git 101: Git and GitHub for Beginners
Git 101: Git and GitHub for Beginners Git 101: Git and GitHub for Beginners
Git 101: Git and GitHub for Beginners
 
Git Tutorial I
Git Tutorial IGit Tutorial I
Git Tutorial I
 

Semelhante a Github basics

Git isthenewsexy
Git isthenewsexyGit isthenewsexy
Git isthenewsexy
Ailsa126
 
Gitting the Most From Git
Gitting the Most From GitGitting the Most From Git
Gitting the Most From Git
Chris Miller
 

Semelhante a Github basics (20)

Git installation and configuration
Git installation and configurationGit installation and configuration
Git installation and configuration
 
Basic Git commands
Basic Git commandsBasic Git commands
Basic Git commands
 
Let's Git this Party Started: An Introduction to Git and GitHub
Let's Git this Party Started: An Introduction to Git and GitHubLet's Git this Party Started: An Introduction to Git and GitHub
Let's Git this Party Started: An Introduction to Git and GitHub
 
Beginner's guide to git and github
Beginner's guide to git and github Beginner's guide to git and github
Beginner's guide to git and github
 
Git 101 - Crash Course in Version Control using Git
Git 101 - Crash Course in Version Control using GitGit 101 - Crash Course in Version Control using Git
Git 101 - Crash Course in Version Control using Git
 
Demo
DemoDemo
Demo
 
Github By Nyros Developer
Github By Nyros DeveloperGithub By Nyros Developer
Github By Nyros Developer
 
Git is a distributed version control system .
Git is a distributed version control system .Git is a distributed version control system .
Git is a distributed version control system .
 
git and github
git and githubgit and github
git and github
 
Introduction to Git for Artists
Introduction to Git for ArtistsIntroduction to Git for Artists
Introduction to Git for Artists
 
Git presentation
Git presentationGit presentation
Git presentation
 
Git isthenewsexy
Git isthenewsexyGit isthenewsexy
Git isthenewsexy
 
Gitting the Most From Git
Gitting the Most From GitGitting the Most From Git
Gitting the Most From Git
 
Introduction To Git Workshop
Introduction To Git WorkshopIntroduction To Git Workshop
Introduction To Git Workshop
 
Git101
Git101Git101
Git101
 
Git 101 Workshop
Git 101 WorkshopGit 101 Workshop
Git 101 Workshop
 
GIT-FirstPart.ppt
GIT-FirstPart.pptGIT-FirstPart.ppt
GIT-FirstPart.ppt
 
The Basics of Open Source Collaboration With Git and GitHub
The Basics of Open Source Collaboration With Git and GitHubThe Basics of Open Source Collaboration With Git and GitHub
The Basics of Open Source Collaboration With Git and GitHub
 
Git: Why And How to
Git: Why And How toGit: Why And How to
Git: Why And How to
 
Introduction to Git and Github
Introduction to Git and GithubIntroduction to Git and Github
Introduction to Git and Github
 

Último

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Último (20)

Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 

Github basics

  • 1. GIT & GITHUB BASICS GameCraft Training  Radoslav Georgiev (@Rado_G)
  • 2. DISCLAIMER I’m not a Git expert or pro 
  • 3. Agenda • Why use Source Control System ? • How to setup Git and Github on Windows ? • Terminology • Repositories 1.0 – git {init, add, commit, push, remote} • Repositories 2.0 – .gitignore, git {clone, pull, revert, mv, rm} • Fork & Pull + Shared Repos
  • 4. Why use Source Control Systems ? What is ? Why use ? • SCS are a tool that helps • Keeps the developing keeping versions of the process simple code • All files are hosted • SCS allow multiple (Github) developers to work on the • No nose bleed! same code with minimum • Tons of благинки amount of collisions
  • 5. No Source Control System =
  • 6. Agenda • Why use Source Control System ? • How to setup Git and Github on Windows ? • Terminology • Repositories 1.0 – git {init, add, commit, push, remote} • Repositories 2.0 – .gitignore, git {clone, pull, revert, mv, rm} • Fork & Pull + Shared Repos
  • 7. How to setup Git and Github on Windows? • First of all – create a Github Account • And second : • There’s a great guide @ the Github site - http://help.github.com/win-set-up-git/
  • 8. How to setup Git and Github on Windows? cont’d • You’ll need msysgit (Linux shell) • You’ll have to generate an SSH key-pair • And think of a passphrase ! <- Important • You’ll have to add the SHH keys to your Github account • Then test : $ ssh –T git@github.com some output .. (yes/no) $ yes Hi username! You‟ve successfully authenticated, but Github does not provide shell access. • gg, wp
  • 9. And some configuration ^_^ • Name & Email – Github tracks them $ git config –global user.name “Firstname Lastname” $ git config –global user.email “email@email.com” • Github API token • On the GitHub site Click “Account Settings” > Click “Account Admin.” $ git config –global github.user username $ git config –global github.token the_token
  • 10. DEMO TIME 1) Create a Github account 2) Set up with Windows
  • 11. Agenda • Why use Source Control System ? • How to setup Git and Github on Windows ? • Terminology • Repositories 1.0 – git {init, add, commit, push, remote} • Repositories 2.0 – .gitignore, git {clone, pull, revert, mv, rm} • Fork & Pull + Shared Repos
  • 12. Some basic Terminology • git = the shell command to work with Git • repo = Repository, where the code for a given project is kept • commit = verb, means push the code to the server (in Git, commit = (commit + push) • diff = the difference between two versions of a file • SSH = Secure SHell – Network protocol for communication between machines • RSA = Rivest, Shamir, Adleman – public-key cryptography algorithm $ command Output of the command
  • 13. Agenda • Why use Source Control System ? • How to setup Git and Github on Windows ? • Terminology • Repositories 1.0 – git {init, add, commit, push, remote} • Repositories 2.0 – .gitignore, git {clone, pull, revert, mv, rm} • Fork & Pull + Shared Repos
  • 14. Lets create a repo ! • Click on the new repository button in Github • Start the shell (Git Bash) • Execute the super-complex command : $ git init Initialized empty Git repository in c:/code/TestingGithub/.git/ • Great, now we have repo. Lets create a file, shall we ? $ touch omgrofl.txt $ notepad omgrofl.txt (and add text) or $ echo “rofllol” > omgrofl.txt $ cat omgrofl.txt  cat prints to the output rofllol
  • 15. Lets create a repo ! (cont’d) • Okay, lets add it ! $ git add omgrofl.txt • And commit it  $ git commit –m „This is a commit message‟ Some gitorish output • And for the sake of learning, lets edit it again $ echo “roflcopter” >> omgrofl.txt $ cat omgrofl.txt rofllol roflcopter
  • 16. Lets create a repo ! (cont’d) • And now, lets see : $ git status • Outputs : # On branch master # Changes not staged for commit: # (use "git add <file>..." to update what will be committed) # (use "git checkout -- <file>..." to discard changes in working directory) # # modified: omgrofl.txt • Almost there $ git add omgrofl.txt $ git status
  • 17. How it works? Staging area.
  • 18. What about Github ? Remotes ? • Okay, you suck, there’s nothing @ Github • Damn. Enter magic! $ git remote add origin git@github.com:UserName/ProjectName.git • Git commits locally, pushes remotely !!!!!!! • Add the remote when the repo is created (git init, remember ? ) $ git remote add [name] [url] • Want to see the remotes ? $ git remote -v
  • 19. What about Github ? Push it up, baby! • Okay, we have committed and added a remote to Github. It’s time to push  $ git push origin master Enter passphrase !  • Open up the repo in Github and enjoy ^_^ • The push command explained : $ git push [remote_name] [branch] • Branches are black magic for later  • There’s a big chance that the branch you are pushing to will be named “master”
  • 20. Recap ! Creating a repo • Create a repo $ git init • Add an remote $ git remote add origin git@github.com:UserName/ProjectName.git • Check if directory is a git repo $ ls –la Search for .git folder
  • 21. Recap ! The workflow. • Edit files and check the status $ git status • Add them to the staging area $ git add file1.php file2.php file3.php • Commit the changes $ git commit –m „Commit message that explains the changes‟ • Push them to Github $ git push origin master Enter passphrase! • Celebrate ! 
  • 22. DEMO 1) Create yourself a repo (from Github) 2) Add and Commit few files 3) Push them ! 4) Repeat 2) and 3) few times
  • 23. TAKE A BREAK. We all deserve it 
  • 24. Agenda • Why use Source Control System ? • How to setup Git and Github on Windows ? • Terminology • Repositories 1.0 – git {init, add, commit, push, remote} • Repositories 2.0 – .gitignore, git {clone, pull, revert, mv, rm} • Fork & Pull + Shared Repos
  • 25. Don’t push your passwords • Use .gitignore $ touch .gitignore $ echo “db_config.php” >> .gitignore $ git add .gitignore $ git push origin master Enter passphrase! • Something missing ? $ git commit –m „You are not seeing my passwords!‟
  • 26. Made a mistake ? No worries • Unstage something – git reset $ git add index.php $ git status Says it‟s staged. I don‟t want to ! I changed my mind. $ git reset HEAD – index.php $ git status Now I‟m happy ^_^ • Revert a commit ? Reset hard! $ git reset –hard HEAD~1 OR $ git reset –hard <commit_id>
  • 27. Fork time. • If you want to get a repo – fork is the way. • Fork on github and then $ git clone git@github.com:UserName/ProjectName.git • This inits a new Git repository! • You can do everything with the code now – this is a separate repository. • More @ http://help.github.com/fork-a-repo/
  • 28. Shared repos • If you are added as a collaborator @ some repo – you can do everything (clone, add, commit, push) without restrictions. • Shared repos mean more developers. More Developers = more changes. $ git pull [remote_name] • This will pull the latest changes 