SlideShare a Scribd company logo
#comdaybe




        Git(Hub) for Windows Developers
                     Ordina Belgium
             Kristof Mattei & Bart Wullems
About us
• Bart Wullems
   – .NET Application Architect @Ordina
   – http://bartwullems.blogspot.com
   – bart.wullems@ordina.be
• Kristof Mattei
   – .NET developer @Ordina
   – http://kristofmattei.be
   – kristof.mattei@ordina.be
About Ordina
•   IT Consultancy Firm
•   Offices in Mechelen & Hasselt
•   600+ employees, 80+ MS developers
•   5 focus sectors:
    – banking, public, pharma, industry, teleco
      m
Agenda
•   Distributed Source Control
•   What’s Git?
•   Git Basics
•   MsysGit
•   Github
•   Github for Windows
•   Q&A
Distributed source control
About Version Control
 Local Version     Centralized
 Control Systems   Version Control
                   Systems
About Version Control
• Distributed Version
  Control Systems
  – No central repository
  – Disconnected
  – Fast
--distributed-even-if-your-workflow-isn’t

What’s Git?
Git
• Global Information Tracking
  – Git is a free and open source distributed version
    control system used as software configuration
    Management tool.
  – Git is a distributed version control system
  – Git does not use a centralized server.
  – Git runs on
    Linux, BSD, Solaris, Darwin, Windows, and
    other operating systems.
Git basics
Git Basics
The Three States
git and 3 conceptual spaces
• Git deals with 3 spaces. Each space is a self
  contained area of concern to git and to you.
   – Working Directory (e.g. 'testgit' folder)
       • this is where you keep your current files visible in directory or
         folder.
   – Index or Stage (e.g. "testgit/.git/index")
       • this is where git keeps snapshot to be committed
         permanently to Repository
   – Repository (e.g. "testgit/.git/objects/*")
       • This is the history of commits, trees, blobs etc..
Advantages
•   Free
•   Local
•   Fast
•   Distributed
•   Small
msysGit
msysGit
• Git client for Windows

  – http://msysgit.github.com/
LF and CRLF line endings
•   CRLF is for Windows and LF is for unix.
    – to keep cross platform development going
      smooth keep CRLF for windows and LF for
      unix
    – with autocrlf = true git converts your
      windows CRLF into LF internally
• Our recommendation
    – autocrlf = false
Open “Git Bash”
First git commands

demo
Coding

demo
Staging

demo
Commit

demo
Branch

demo
Merge

demo
Github
What is Github?
• https://github.com
GitHub

demo
Social coding

demo
Github for Windows
Github for Windows          New
• “Better Git on Windows”
Github for Windows

demo
Learn More
 The next step is to read guides and
 books online.

 start with the git community book
 http://book.git-scm.com
             marekj | testr.us
Learn More

• Git For Windows Developers by Jason
 Meridth

• http://think-like-a-git.net/
• http://gitref.org/
Q&A
Thank you!

More Related Content

Viewers also liked

Techorama - Evolvable Application Development with MongoDB
Techorama  - Evolvable Application Development with MongoDBTechorama  - Evolvable Application Development with MongoDB
Techorama - Evolvable Application Development with MongoDB
bwullems
 
Javascript omg!
Javascript omg!Javascript omg!
Javascript omg!
bwullems
 
Tfs Monitor Windows Phone 7 App
Tfs Monitor Windows Phone 7 AppTfs Monitor Windows Phone 7 App
Tfs Monitor Windows Phone 7 App
bwullems
 
Building an enterprise app in silverlight 4 and NHibernate
Building an enterprise app in silverlight 4 and NHibernateBuilding an enterprise app in silverlight 4 and NHibernate
Building an enterprise app in silverlight 4 and NHibernate
bwullems
 
Convention over configuration in .Net 4.0
Convention over configuration in .Net 4.0Convention over configuration in .Net 4.0
Convention over configuration in .Net 4.0
bwullems
 
Caliburn.micro
Caliburn.microCaliburn.micro
Caliburn.micro
bwullems
 
Modyul2 angdaigdigsaklasikalattransisyunalnapanahon-140807210600-phpapp01
Modyul2 angdaigdigsaklasikalattransisyunalnapanahon-140807210600-phpapp01Modyul2 angdaigdigsaklasikalattransisyunalnapanahon-140807210600-phpapp01
Modyul2 angdaigdigsaklasikalattransisyunalnapanahon-140807210600-phpapp01
Dexter Reyes
 

Viewers also liked (7)

Techorama - Evolvable Application Development with MongoDB
Techorama  - Evolvable Application Development with MongoDBTechorama  - Evolvable Application Development with MongoDB
Techorama - Evolvable Application Development with MongoDB
 
Javascript omg!
Javascript omg!Javascript omg!
Javascript omg!
 
Tfs Monitor Windows Phone 7 App
Tfs Monitor Windows Phone 7 AppTfs Monitor Windows Phone 7 App
Tfs Monitor Windows Phone 7 App
 
Building an enterprise app in silverlight 4 and NHibernate
Building an enterprise app in silverlight 4 and NHibernateBuilding an enterprise app in silverlight 4 and NHibernate
Building an enterprise app in silverlight 4 and NHibernate
 
Convention over configuration in .Net 4.0
Convention over configuration in .Net 4.0Convention over configuration in .Net 4.0
Convention over configuration in .Net 4.0
 
Caliburn.micro
Caliburn.microCaliburn.micro
Caliburn.micro
 
Modyul2 angdaigdigsaklasikalattransisyunalnapanahon-140807210600-phpapp01
Modyul2 angdaigdigsaklasikalattransisyunalnapanahon-140807210600-phpapp01Modyul2 angdaigdigsaklasikalattransisyunalnapanahon-140807210600-phpapp01
Modyul2 angdaigdigsaklasikalattransisyunalnapanahon-140807210600-phpapp01
 

Similar to Git(hub) for windows developers

Git SVN Migrate Reasons
Git SVN Migrate ReasonsGit SVN Migrate Reasons
Git SVN Migrate Reasons
Ovidiu Dimulescu
 
GIT for version control- A very comprehensive guide .pptx
GIT for version control- A very comprehensive guide .pptxGIT for version control- A very comprehensive guide .pptx
GIT for version control- A very comprehensive guide .pptx
MohanBharti4
 
Mini-training: Let’s Git It!
Mini-training: Let’s Git It!Mini-training: Let’s Git It!
Mini-training: Let’s Git It!
Betclic Everest Group Tech Team
 
Introduction to git and stash
Introduction to git and stashIntroduction to git and stash
Introduction to git and stash
Xpand IT
 
Enterprise git
Enterprise gitEnterprise git
Enterprise git
Pedro Melo
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
Ovidiu Dimulescu
 
Using Git with Rational Team Concert and Rational ClearCase in enterprise env...
Using Git with Rational Team Concert and Rational ClearCase in enterprise env...Using Git with Rational Team Concert and Rational ClearCase in enterprise env...
Using Git with Rational Team Concert and Rational ClearCase in enterprise env...
Bartosz Chrabski
 
Que nos espera a los ALM Dudes para el 2013?
Que nos espera a los ALM Dudes para el 2013?Que nos espera a los ALM Dudes para el 2013?
Que nos espera a los ALM Dudes para el 2013?
Bruno Capuano
 
Introduction to git and githhub with practicals.pptx
Introduction to git and githhub with practicals.pptxIntroduction to git and githhub with practicals.pptx
Introduction to git and githhub with practicals.pptx
Abdul Salam
 
Git
GitGit
Git Gerrit Mit Teamforge
Git Gerrit Mit TeamforgeGit Gerrit Mit Teamforge
Git Gerrit Mit Teamforge
CollabNet
 
Git for folk who like GUIs
Git for folk who like GUIsGit for folk who like GUIs
Git for folk who like GUIs
Tim Osborn
 
Git for Windows
Git for WindowsGit for Windows
Git for Windows
Ovidiu Dimulescu
 
Git para novatos
Git para novatosGit para novatos
Git para novatos
NSCoder Mexico
 
Embedded Systems: Lecture 10: Introduction to Git & GitHub (Part 1)
Embedded Systems: Lecture 10: Introduction to Git & GitHub (Part 1)Embedded Systems: Lecture 10: Introduction to Git & GitHub (Part 1)
Embedded Systems: Lecture 10: Introduction to Git & GitHub (Part 1)
Ahmed El-Arabawy
 
Demo
DemoDemo
git and github-1.pptx
git and github-1.pptxgit and github-1.pptx
git and github-1.pptx
tnscharishma
 
Git and Github Session
Git and Github SessionGit and Github Session
Git and Github Session
GoogleDevelopersStud1
 
O365Con18 - Git and GitHub - Rick van Rousselt
O365Con18 - Git and GitHub - Rick van RousseltO365Con18 - Git and GitHub - Rick van Rousselt
O365Con18 - Git and GitHub - Rick van Rousselt
NCCOMMS
 
Ramin Orujov - Android API Overview and Repository
Ramin Orujov - Android API Overview and RepositoryRamin Orujov - Android API Overview and Repository
Ramin Orujov - Android API Overview and Repository
Rashad Aliyev
 

Similar to Git(hub) for windows developers (20)

Git SVN Migrate Reasons
Git SVN Migrate ReasonsGit SVN Migrate Reasons
Git SVN Migrate Reasons
 
GIT for version control- A very comprehensive guide .pptx
GIT for version control- A very comprehensive guide .pptxGIT for version control- A very comprehensive guide .pptx
GIT for version control- A very comprehensive guide .pptx
 
Mini-training: Let’s Git It!
Mini-training: Let’s Git It!Mini-training: Let’s Git It!
Mini-training: Let’s Git It!
 
Introduction to git and stash
Introduction to git and stashIntroduction to git and stash
Introduction to git and stash
 
Enterprise git
Enterprise gitEnterprise git
Enterprise git
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
 
Using Git with Rational Team Concert and Rational ClearCase in enterprise env...
Using Git with Rational Team Concert and Rational ClearCase in enterprise env...Using Git with Rational Team Concert and Rational ClearCase in enterprise env...
Using Git with Rational Team Concert and Rational ClearCase in enterprise env...
 
Que nos espera a los ALM Dudes para el 2013?
Que nos espera a los ALM Dudes para el 2013?Que nos espera a los ALM Dudes para el 2013?
Que nos espera a los ALM Dudes para el 2013?
 
Introduction to git and githhub with practicals.pptx
Introduction to git and githhub with practicals.pptxIntroduction to git and githhub with practicals.pptx
Introduction to git and githhub with practicals.pptx
 
Git
GitGit
Git
 
Git Gerrit Mit Teamforge
Git Gerrit Mit TeamforgeGit Gerrit Mit Teamforge
Git Gerrit Mit Teamforge
 
Git for folk who like GUIs
Git for folk who like GUIsGit for folk who like GUIs
Git for folk who like GUIs
 
Git for Windows
Git for WindowsGit for Windows
Git for Windows
 
Git para novatos
Git para novatosGit para novatos
Git para novatos
 
Embedded Systems: Lecture 10: Introduction to Git & GitHub (Part 1)
Embedded Systems: Lecture 10: Introduction to Git & GitHub (Part 1)Embedded Systems: Lecture 10: Introduction to Git & GitHub (Part 1)
Embedded Systems: Lecture 10: Introduction to Git & GitHub (Part 1)
 
Demo
DemoDemo
Demo
 
git and github-1.pptx
git and github-1.pptxgit and github-1.pptx
git and github-1.pptx
 
Git and Github Session
Git and Github SessionGit and Github Session
Git and Github Session
 
O365Con18 - Git and GitHub - Rick van Rousselt
O365Con18 - Git and GitHub - Rick van RousseltO365Con18 - Git and GitHub - Rick van Rousselt
O365Con18 - Git and GitHub - Rick van Rousselt
 
Ramin Orujov - Android API Overview and Repository
Ramin Orujov - Android API Overview and RepositoryRamin Orujov - Android API Overview and Repository
Ramin Orujov - Android API Overview and Repository
 

Recently uploaded

Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Speck&Tech
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Zilliz
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
Pixlogix Infotech
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 

Recently uploaded (20)

Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 

Git(hub) for windows developers

Editor's Notes

  1. Bart (stelt ons allebei voor)
  2. BartBefore we start some questions:Who has experience with source control?Who has experience with distributed source control like Git or Mercurial?Who knows github?Who is using github today?Important remark: this is an introductionary session
  3. Bart
  4. Bart
  5. Kristof
  6. KristofJust describe the slide, straightforward.Important is not to fiddle with anything other than the Working Directory. All the rest are managed by Git.
  7. KristofFree, open source, fast.Full local copyBranching is first of all local, THEN you sync it with the server, so for all that matters the server doesn’t need to know that you’re developing changes on 3 seperate feature branchesOfcourse for backup related stuff it might (is) wise to sync them with at least one other server (if anything can go wrong, it will)Last point: since on the server the size is the same as your local repository, requirements are smaller. No need for a database server...
  8. BartThrough the console pain
  9. Bart
  10. BartTrue= handing voor cross platform teams(unix & windows & …)False= mag niet op WindowsInput= voorkeur indien iedereen op zelfde platformUpdate:True (only applies on Windows) crlf -> lf at checkin, lf -> crlf at checkout (NO!)False = leave as is ---- this is what we needInput: transform CRLF -> LF at checkin, don’t touch checkout.
  11. Bart
  12. BartIntroduce yourself to gitGitconfig and ~/.gitconfiggitconfig: global settings look at: C:\\Program Files (x86)/Git/etc/gitconfig notice the setting "autocrlf = true" ~/.gitconfig: user settings file tell git about yourself and your machine first and your preferences to create this file.Username : gitconfig --global user.name <name>Email : gitconfig --global user.email <email>Color UI  colors git output : gitconfig --global color.ui trueThese settingsget written to your ~/.gitconfig fileShow config file and content (~ = C:\\Users\\<username> folder)Better alternative then SSH key is the Windows Credential Store helper:Download it here https://help.github.com/articles/set-up-gitCreate SSH key(we need this to connect to GitHub later)$ cd ~/.ssh : Checks to see if there is a directory named ".ssh" in your user directory$ ssh-keygen -t rsa -C "your_email@youremail.com“ Creates a new ssh key using the provided email$ ssh -T git@github.com :Attempts to ssh to githubInitialize repositoryCreate a new folder)$ cd ~mkdir communityday2012cd communityday2012Git initA new git repository is createdShow the created foldersStart SeeGit
  13. Open Visual StudioCreate new applicationCopy the application content to the previously created folderAdd a readme.txt file to the created folderCheck the git status$ git status Too many files are includedAlso show result in SeeGitWe can solve this by adding a .gitignore filetouch .gitignoreGo to https://github.com/github/gitignore Select the correct .ignore file content and copy itCan also be configured for all projects : git config --global core.excludesfile ~/.global_ignore Check the git status$ git status Only the required files remainAlso show result in SeeGit
  14. To add one file, do:$ Git add Readme.txt (IMPORTANT: case sensitive!)To add all files, do:$ Git add . This will add all files to the staging environmentCheck the current status$ GitstatusAlso show result in SeeGit
  15. Let’s now commit the files to the repository$ git commit –m “Initial commit”Check the status$ git statusLet’s have a look at the commit history of your repository$ git logYou can view statistics about which files have changed and how many lines were added and removed from each file by adding the $ git log –stat (press q to quit the editor)Also show result in SeeGit
  16. KristofImportant remark: only one working folder(!)Git branch  view master branchGit checkout -b devGit branch  view dev branchesChange something in “dev” branch(readme)Commit in that branchGit checkout masterChange something in the same file(readme)  causes merge conflictCommit in the master branchAlso show result in SeeGit(If needed stash changes if you don’t want to commit them.)  similar to Shelvesets in TFS
  17. KristofSWITCH BRANCH to MASTER!!!!!  uses the same folder(!)Pull changes from devGit merge “dev”A merge is (unlike TFS) final  No local pending changes and commit(!)Use SeeGit to show resultsGitk  show history
  18. Kristof
  19. KristofJust read description, straightforward.
  20. KristofLogin as a userShow site functionalityAdd SSH keyClick “Account Settings” > Click “SSH Keys” > Click “Add SSH key”Create (new)repositoryPush local changes to githubgit remote add origin https://github.com/Snakiej/Empty.gitgit push –u origin masterShow some keyboard shortcuts(shift-?)Show reports(graphs)
  21. KristofForkLogin with other account( Bart)Fork repository from previous accountMake change to readmeAdd comment to lineSend pull requestPull requestsLogin with original accountReview pull request
  22. Bart
  23. Bart
  24. Adding repositoriesYou can add any repository already on your hard drive by dragging a folder in from Explorer. If that folder is a Git repository, GitHub for Windows will import all of the history and connect it to your GitHub accounts. Another great way to add repositories is to clone them from GitHub.com. You can do that right in the application by browsing through your personal account and any organizations you belong to. You can also clone with one click from any repository page on GitHub.com. Just look for the Clone in Windows button. Command lineYou can pull up a PowerShell console within the context of any repository. GitHub for Windows even includes the amazing posh-git utility for your command line pleasure. SSH key managementIn most cases you don’t even need SSH keys. All repositories are cloned over HTTPS by default, and GitHub for Windows caches your credentials so you don’t have to keep entering your password for every remote action, even on the command line. For cases where you have an existing repository using an SSH remote, GitHub for Windows will seamlessly set up SSH for you. You will get an email and see a new key added to your accountBranches: local & remoteCreate repositoryFrom file system through drag & dropFrom clone in windows button on GitHubChange repository settings- add gitignore- change gitattributesCreate branchChange branchCommit changeMerge branchShow diffPush to github button
  25. Bart
  26. Bart
  27. Bart