Your SlideShare is downloading. ×
0
GIT and its Extension TrainingEric Guo                         2012-03-27
Training Agenda•   Version Control History, GIT Design Goal•   GIT Extension Installation and Setup•   GIT Concept and Ter...
Version Control History   manually keep track of versions of code! (1960s)   keep lots of versions in one file! (1972, S...
GIT & GitHub History   Torvalds wanted a distributed system that he could    use like BitKeeper, but none of the availabl...
GIT Design Goal•   Take CVS as an example of what not to do; if in    doubt, make the exact opposite decision.•   Support ...
GIT Extension Design Goal•   GitExtensions is a shell extension, a Visual Studio    2008 / 2010 plug-in and a standalone G...
GIT Extension Installation – All User   http://code.google.com/p/gitextensions/ (download    URL)
GIT Extension Installation – Both
GIT Extension Installation - Integration
GIT Extension Installation - PuTTY
GIT Extension Installation - KDiff3
GIT Extension Installation – MsysGIT
GIT Extension Installation – Bash only
GIT Extension Installation – cross-platform
GIT Extension SetupGIT Extension  Settings  Settings to fill: User Name eMail
GIT Generate SSH Key
GIT Email your Public key to Admin                      • Copy selection text                      and email to your      ...
GIT clone your first repositories to test   Repository to clone: gitolite@cvpscmip01:testing
GIT Commit your first change to test
GIT Daily Usage in SVN way   Clone (SVN Checkout)   Commit (in Local!)   Push (SVN Commit)   Pull (SVN Update All)   ...
GIT ConceptandTerminology
gitK – a commit viewer for git
GIT Key Sales Point• Very fast and user friendly• Source Code Repository is    distributed, isolated, history    complete•...
Create your GIT repository in GIT ExtensionOpen Repopsitory  Your not GIT init yet folder  Initialize Repository
Add .gitignore for VS.NET intermediate filesForgot any add ignore file and pattern in Subversion, now it’s a One-click onl...
Commit initial version of files
Push your repository to CVPSCMIP01You can to put any repository to: (no need inform GIT admin!)gitolite@cvpscmip01:/usr/[y...
Your repository is also visible at Web!Suggestion:1. Work as own at first in your usr folder. (No need to inform GIT Admin...
More GIT tricks need SSH and console nowSetting more description for your own repository:6749@SHE127731 /d/git$ echo "A se...
More document and essay about GIT GitExtensions User Manual (in your  hard drive after install GIT Extension) Pro GIT (C...
Upcoming SlideShare
Loading in...5
×

Git extension-training

3,446

Published on

The one hours GIT Extension Training focus basic usage and installation for Subversion users.

Given at SDSS - SanDisk as internal training.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
3,446
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
53
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Git extension-training"

  1. 1. GIT and its Extension TrainingEric Guo 2012-03-27
  2. 2. Training Agenda• Version Control History, GIT Design Goal• GIT Extension Installation and Setup• GIT Concept and Terminology• GIT Daily Usage in SVN way• Create your own GIT repo (local & remote)• New GIT feature and further more manual
  3. 3. Version Control History manually keep track of versions of code! (1960s) keep lots of versions in one file! (1972, SCCS) You can each have your own copy checked out! (1982, RCS) version multiple files at once! (1986, CVS, atomic by Subversion 2000) shared repository can be on a remote machine! (1994, CVS with ) open source version control hosting! (1999, SourceForge) no central repository! (2005, GIT) When you checkout that’s a fork too, and you can do that in public! (2008, GIThub)
  4. 4. GIT & GitHub History Torvalds wanted a distributed system that he could use like BitKeeper, but none of the available free systems met his needs, particularly his performance needs. From an email he wrote on 7 April 2005 while writing the first prototype. GitHub is a web-based hosting service for software development projects that use the Git revision control system. GitHub offers both commercial plans and free accounts for open source projects. According to the Git Users Survey in 2009, GitHub is the most popular Git hosting site.
  5. 5. GIT Design Goal• Take CVS as an example of what not to do; if in doubt, make the exact opposite decision.• Support a distributed, BitKeeper-like workflow• Very high performanc and strong safeguards against corruption, either accidental or malicious
  6. 6. GIT Extension Design Goal• GitExtensions is a shell extension, a Visual Studio 2008 / 2010 plug-in and a standalone GIT repository tool.• Great tools enable you think and work in Unix style gradually
  7. 7. GIT Extension Installation – All User http://code.google.com/p/gitextensions/ (download URL)
  8. 8. GIT Extension Installation – Both
  9. 9. GIT Extension Installation - Integration
  10. 10. GIT Extension Installation - PuTTY
  11. 11. GIT Extension Installation - KDiff3
  12. 12. GIT Extension Installation – MsysGIT
  13. 13. GIT Extension Installation – Bash only
  14. 14. GIT Extension Installation – cross-platform
  15. 15. GIT Extension SetupGIT Extension  Settings  Settings to fill: User Name eMail
  16. 16. GIT Generate SSH Key
  17. 17. GIT Email your Public key to Admin • Copy selection text and email to your Admin • Save private key because you need private key to login latter • Loss private key need regenerate private key and resent public key to Admin
  18. 18. GIT clone your first repositories to test Repository to clone: gitolite@cvpscmip01:testing
  19. 19. GIT Commit your first change to test
  20. 20. GIT Daily Usage in SVN way Clone (SVN Checkout) Commit (in Local!) Push (SVN Commit) Pull (SVN Update All) gitK (SVN History)
  21. 21. GIT ConceptandTerminology
  22. 22. gitK – a commit viewer for git
  23. 23. GIT Key Sales Point• Very fast and user friendly• Source Code Repository is distributed, isolated, history complete• All action can run in Local except pull and push• Submit and rollback always success (until pull and push)• Can fix last submit very easily
  24. 24. Create your GIT repository in GIT ExtensionOpen Repopsitory  Your not GIT init yet folder  Initialize Repository
  25. 25. Add .gitignore for VS.NET intermediate filesForgot any add ignore file and pattern in Subversion, now it’s a One-click only! But don’t forgot to add ignore files when you initial the repository!
  26. 26. Commit initial version of files
  27. 27. Push your repository to CVPSCMIP01You can to put any repository to: (no need inform GIT admin!)gitolite@cvpscmip01:/usr/[yourname]/[your_repository_name]
  28. 28. Your repository is also visible at Web!Suggestion:1. Work as own at first in your usr folder. (No need to inform GIT Admin)2. Rise your project to root folder if it is company widely used and relatively stable. (Need GIT Admin help)3. Old Subversion project will moved to root folder by GIT Admin alreadyhttp://cvpscmip01/usr/eric/MTtest-Assistant.git
  29. 29. More GIT tricks need SSH and console nowSetting more description for your own repository:6749@SHE127731 /d/git$ echo "A semi-auto MES Yield Limit Batch setting tools used in SPAS 125-001" | sshgitolite@cvpscmip01 setdesc usr/eric/YieldLimits-ChangeEnter passphrase for key /c/Users/6749/.ssh/id_rsa:New description is:A semi-auto MES Yield Limit Batch setting tools used in SPAS 125-001
  30. 30. More document and essay about GIT GitExtensions User Manual (in your hard drive after install GIT Extension) Pro GIT (Chinese) GIT Magic (Chinese) 《Git权威指南》Things we not mentioned: GIT command line Branch, Merge, Rebase, Cherry Pick
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×