0% found this document useful (0 votes)
32 views

A Crash Course in Version Control and Git: Warren Frame

This document provides an introduction and overview of version control and Git. It begins with an agenda that outlines the goals of learning version control using Git and contributing to projects on GitHub. It then defines what version control is and why it is useful. It distinguishes between centralized and distributed version control systems and lists some hosted and on-premise solutions. It demonstrates exploring and using GitHub and some basic Git commands. Finally, it provides further reading recommendations on learning Git and contributing to open source projects.

Uploaded by

Info AT
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
32 views

A Crash Course in Version Control and Git: Warren Frame

This document provides an introduction and overview of version control and Git. It begins with an agenda that outlines the goals of learning version control using Git and contributing to projects on GitHub. It then defines what version control is and why it is useful. It distinguishes between centralized and distributed version control systems and lists some hosted and on-premise solutions. It demonstrates exploring and using GitHub and some basic Git commands. Finally, it provides further reading recommendations on learning Git and contributing to open source projects.

Uploaded by

Info AT
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 10

A Crash Course in Version

Control and Git


Warren Frame
Agenda
About Me
What do I do? Where to find me
• Sr. Systems Engineer, Rochester Regional Health  Twitter.com/PSCookieMonster
• Design and build solutions, learn, share
 LinkedIn.com/in/Wframe
• Other Pursuits:
Science, Infosec  RamblingCookieMonster.github.io
Tech, Cooking
Tennis, Family  Github.com/RamblingCookieMonster

 PowerShell Slack Community


Goals
• Use version control for your own projects

• Foundation to contribute to Microsoft's DSC Resources on GitHub

• Background to make a case to bring version control to your team at $Work

• Become a Git Pro!


What is Version Control?
• System to manage changes to files
o Who vors
o When April 17
o What Files and differential
o (Sometimes) Why To fix Pester tests

• Why use it?


o Revert to or review prior changes
o Maintain multiple versions
o Compare differences
o Share and collaborate
o Modern solutions might assume you have it!
• Infrastructure-as-code
• Continuous Integration and Delivery
o Google around for many more reasons!
AKA Revision Control, Source Control
Version Control Systems
• Centralized
o Work directly against a central server
o Subversion, CVS, Perforce, etc.

• Distributed
o Work locally, optionally push to remote repositories
o Git, Mercurial (Hg), etc.

• Hosted solutions
o GitHub, BitBucket, Visual Studio Online, etc.

• On-Premise solutions
o GitHub Enterprise, Stash, Team Foundation Server, etc.
git-tower.com
Terminology
• Nope nope nope
Exploring and Using GitHub
• Demo!
Command Line Git
• Demo!
Further Reading
There’s a lot out there. Here are some highlights. Don’t be intimidated, you don’t need all this, but it may come in handy if you want to dive a bit deeper into the weeds. The
key is starting to use it, just like PowerShell!

• Interactive guides
o GitHub’s interactive guide – Learn Git in 15 minutes: https://try.github.io/
o Learn Git Branching: http://pcottle.github.io/learnGitBranching
o Interactive Cheat sheet: http://ndpsoftware.com/git-cheatsheet.html

• References
o Official git reference: http://git-scm.com/docs
o Pro Git (free!): http://www.git-scm.com/book/en/v2 - the first two or three chapters are a great intro
o Understanding Branches: http://blog.thoughtram.io/git/rebase-book/2015/02/10/understanding-branches-in-git.html
o Git Explained: For Beginners: http://www.dotnetcodegeeks.com/2015/06/git-explained-for-beginners.html
o GitHub Flow – GitHub from a Browser: https://github.com/blog/1557-github-flow-in-the-browser

• Contributing to Microsoft’s DSC Resources on GitHub


o Guide to getting started with GitHub: https://github.com/PowerShell/DscResources/blob/master/GettingStartedWithGitHub.md
o DSC Contributions guide: https://github.com/PowerShell/DscResources/blob/master/CONTRIBUTING.md
o DSC Resource Style Guidelines: https://github.com/PowerShell/DscResources/blob/master/StyleGuidelines.md

• More references
o Pro Git (free!): http://www.git-scm.com/book/en/v2 - the rest of the book : )
o A Visual Git Reference: http://marklodato.github.io/visual-git-guide/index-en.html
o Git From the Inside Out: https://codewords.recurse.com/issues/two/git-from-the-inside-out
o Git For Computer Scientists: http://eagain.net/articles/git-for-computer-scientists - Great read with pictures, don’t be intimidated by the title
o Branching, forking, other concepts explained: http://stackoverflow.com/questions/3329943/git-branch-fork-fetch-merge-rebase-and-clone-what-are-the-differences

• Oh shoot, something went wrong!


o So you have a mess on your hands workflow: http://justinhileman.info/article/git-pretty/git-pretty.png
o How to undo (almost) anything with Git: https://github.com/blog/2019-how-to-undo-almost-anything-with-git

• A few recent articles:


o Git Disciplined: http://blog.8thlight.com/makis-otman/2015/07/08/git-disciplined.html - Thanks for sharing Steve!
o Git for IT Professionals: Getting Started: http://www.powershellmagazine.com/2015/07/13/git-for-it-professionals-getting-started-2/ - Thanks to Ravikanth! More to come in this series

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy