Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.
-
Upload
jonah-shon-fitzgerald -
Category
Documents
-
view
217 -
download
0
Transcript of Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.
![Page 1: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/1.jpg)
Sofia Event Center
14-15 May 2014
Martin Kulov
Git For TFS Developers
![Page 2: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/2.jpg)
Centralized VCS
• CVS• Subversion• Perforce• Vault• ClearCase• Visual SourceSafe• Team Foundation Version Control
![Page 3: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/3.jpg)
Distributed VCS
• Mercurial• BitKeeper• Fossil• Bazaar• Git
![Page 4: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/4.jpg)
Centralized vs Distributed VCS• “master” vs “blessed” copy• “online” vs “offline” history• “expensive” vs “cheap”
branching• diffs vs snapshots
![Page 5: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/5.jpg)
Git in TFS and VSO
• Supports every Git client• OSS implementation, not Microsoft one• Available in Visual Studio Online• Also in Team Foundation Server 2013• Enterprise features
![Page 6: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/6.jpg)
Enterprise Git
• Easy installation and management• Support• High availability and scale• Integration authentication• Enhanced permissions• ALM integration• Localization
![Page 7: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/7.jpg)
Git in Visual Studio
• Create, clone repo• Push, pull, sync• Branching• Work Item linking• Simplified history
![Page 8: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/8.jpg)
Installing Git
• http://msysgit.github.io/
![Page 9: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/9.jpg)
The “perfect” Git environment• Chocolatey
• cinst PoshGit• cinst Git-Credential-Winstore
• Enable TFS alternate credentials
![Page 10: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/10.jpg)
Configuring Git
• git config --global user.name "Your Name"
• git config --global user.email "Your Email“
• .gitignore
![Page 11: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/11.jpg)
Installing Git demo
![Page 12: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/12.jpg)
Git commands (1)
• init (“disconnected”)• clone (“connected”)
• add, commit (“local”)• push, pull, fetch
(“remote”)
• status• log• gitk --all
![Page 13: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/13.jpg)
Git basics
• Full history is downloaded• History contains commits• Each commit is a snapshot, not a
diff• Checksums are calculated• Operations are local• Three states• Working folder• Index (staged)
![Page 14: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/14.jpg)
Git states
• tracked• modified• staged
![Page 15: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/15.jpg)
Creating repo demo
![Page 16: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/16.jpg)
Anatomy of a commit
• Author• Committer• Date• Message• Parent
commit(s)
f46b2
92da127d72
a72c2
time
![Page 17: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/17.jpg)
Branches
• Pointer to a commit• Stay local unless explicit push• Easy to create and delete• Remotes are read-only• HEAD is another pointer
f46b2
92da127d72
a72c2
time
origin
feature1
master *
![Page 18: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/18.jpg)
Git commands (2)
• remote
• branch, checkout, merge
• rebase
![Page 19: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/19.jpg)
Working with branches demo
![Page 20: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/20.jpg)
Changing history
• git rebase• Change commit’s parent
![Page 21: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/21.jpg)
Centralized Workflow
• One central repo• Dev team push and pull from it• git pull --rebase origin master
![Page 22: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/22.jpg)
Centralized workflow demo
![Page 23: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/23.jpg)
Links
• git-scm.com/book• www.atlassian.com/git/• Microsoft Virtual Academy
– Using Git with Visual Studio 2013
![Page 24: Sofia Event Center 14-15 May 2014 Martin Kulov Git For TFS Developers.](https://reader034.fdocuments.us/reader034/viewer/2022051621/5697bfd81a28abf838caeb95/html5/thumbnails/24.jpg)
Questions???Share your feedback for this particular sessionand for the overall conference experience at
http://aka.ms/intouchfor a chance to win our prizes!