0% found this document useful (0 votes)
9 views48 pages

Introduction to Git and GitHub Basics

The document discusses Git and GitHub, highlighting GitHub as a social coding platform that uses Git for version control. It emphasizes features like public and private repositories, forking projects, and the ease of contributing to open-source projects. Additionally, it mentions the potential for integration with CPAN for Perl community projects.

Uploaded by

prayag.verma
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views48 pages

Introduction to Git and GitHub Basics

The document discusses Git and GitHub, highlighting GitHub as a social coding platform that uses Git for version control. It emphasizes features like public and private repositories, forking projects, and the ease of contributing to open-source projects. Additionally, it mentions the potential for integration with CPAN for Perl community projects.

Uploaded by

prayag.verma
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd

Système de gestion de version

GIT

Thierry GAYET – Septembre 2011


What's Github?
• A source code hoster
– Like Sourceforge or Google Code
• Github is not a replacement for CPAN
What's special about Github?
• Uses git as revision control
• Social coding
• User-centric
What's special about Github?
• “Follow” other people's projects/changes
• Low barrier to contribute (low PITA)
• Explosive growth of participation after
projects move to Github (e.g. Rails)
• Extremely well implemented
Branching/Merging, supported by Git
Why Git?
• So fast it makes your head spin (demo)
• Allows for human error (reset/combine
commits)
• Entire History Local
• Guaranteed to retrieve what people put in
• Optimized network transfers
Project Development
Project Development
Project Development
Project Development
Project Development
Create a new Project
Create a new Project
• Public repos are free (300MB)
• Private repos cost
Leave your Public Key
Boom, a new Project
Boom, a new Project
• Public clone URL:
– Git clone git://[Link]/mschilli/[Link]
• Private clone URL
– Git clone git@[Link]/mschilli/[Link]
Boom, a new Project
A Word on Naming
Conventions
• [Link]
• [Link]
• [Link]
• [Link]
“Open-Source-Dude” finds
the project
• Fork to add a feature
“Fork” isn't a Bad Word
• Here's your new fork
“Fork” isn't a Bad Word
“Fork” isn't a Bad Word
“Fork” isn't a Bad Word
“Fork” isn't a Bad Word
“Fork” isn't a Bad Word
“Fork”
“Fork” isn't
isn't aaBad
BadWord
Word

(poof)
Clone your Copy
Change
• Here's your new fork
Change
• Here's your new fork
Pull
Receive a Pull Request
Receive a Pull Request
Git Pull
What just happened?
Pull changes into local
branch
Squashed Commit
Delete Local Branch
Busy Projects
• Ruby on Rails:
– 27.3 MB
– 656 forks (!)
• Rakudo (Perl6 implementation on Parrot)
– 9 MB
– 42 forks
• YUI (Yahoo Javascript lib)
– 44 MB
– 36 forks
Github tools
• [Link]
Tell the Perl community about
it
• Write it into the [Link] ...
Tell the community about it
• ... and it shows up on CPAN
Push Github Releases to
CPAN
• How about CPAN could be triggered to
fetch new releases from Github?
Push Github Releases to
CPAN
Push Github Releases to
CPAN
Push Github Releases to
CPAN
Push Github Releases to
CPAN
Push Github Releases to
CPAN
Push Github Releases to
CPAN
References
• Slides for this talk: [Link]
• Github screencasts:
[Link]
guide-to-github
• “Version control with git”, Jon Leoliger, O'Reilly 2009
• Dan Dascalescu, "The PITA Threshold: GitHub vs.
CPAN",
[Link]
• Turn your Sourceforge Project into a Git Repo",
[Link]

You might also like