© 2013, LogMeIn, Inc. | The Capability Cloud TM Git használata Visual Studio-ból
Történelem ● Linus Torvalds készítette a Linux kernel fejlesztéséhez ~2005 ● Néhány cég, amely Git-et használ © 2013, LogMeIn, Inc. | The Capability Cloud TM CONFIDENTIAL - FOR INTERNAL USE ONLY 2
Verzió kezelők történelem © 2013, LogMeIn, Inc. | The Capability Cloud TM CONFIDENTIAL - FOR INTERNAL USE ONLY 3 0 Generáció Nincs verzió kezelő 1 Generáció File Locks 2 Generáció CVCS 3 Generáció DVCS
Telepítés ● Git for Windows © 2013, LogMeIn, Inc. | The Capability Cloud TM CONFIDENTIAL - FOR INTERNAL USE ONLY 4
DAG ● Directed Acyclic Graph © 2013, LogMeIn, Inc. | The Capability Cloud TM CONFIDENTIAL - FOR INTERNAL USE ONLY 5 ABC
DAG ● Minden commit egy újabb node ● Minden node ismeri a szülőjét ● Minden node egy hash-el van azonosítva SHA-1 (általában) © 2013, LogMeIn, Inc. | The Capability Cloud TM CONFIDENTIAL - FOR INTERNAL USE ONLY 6 ABCD
Clone ● Forráskód lekérése a szerverről. © 2013, LogMeIn, Inc. | The Capability Cloud TM CONFIDENTIAL - FOR INTERNAL USE ONLY 7 Server ABC Local ABC
Local commit ● Ez a commit nem megy el a szerverig ● Csak a helyi gépen történik. © 2013, LogMeIn, Inc. | The Capability Cloud TM CONFIDENTIAL - FOR INTERNAL USE ONLY 8 Local ABC D Server ABC E
Push to Server ● Minden, helyi commitot fel kell küldenünk. (Előbb-utóbb :) ) ● Minden, helyben történt módosítás elküldünk a távoli szervernek. ● A szerver és a kliens szinkronizált lesz. © 2013, LogMeIn, Inc. | The Capability Cloud TM CONFIDENTIAL - FOR INTERNAL USE ONLY 9 Server ABC D E
Push konfliktusok ● Mivan, ha a szerver állapota így néz ki? ● Nem megengedett! © 2013, LogMeIn, Inc. | The Capability Cloud TM CONFIDENTIAL - FOR INTERNAL USE ONLY 10 Server ABC F G ABC F GD E
Pull (Fetch) ● Stash –nek két „Head”-je van ● Merge! - Git merge ● Ez automatikusan megtörténik, ha nincs konfliktus. ● A szerveren nincs meg a merge, amíg mi fel nem töltjük. (Pusholjuk) © 2013, LogMeIn, Inc. | The Capability Cloud TM CONFIDENTIAL - FOR INTERNAL USE ONLY 11 Local ABC D E G H F
Push Merge to Server © 2013, LogMeIn, Inc. | The Capability Cloud TM CONFIDENTIAL - FOR INTERNAL USE ONLY 12 Server ABC G H D E F
Init © 2013, LogMeIn, Inc. | The Capability Cloud TM CONFIDENTIAL - FOR INTERNAL USE ONLY 13 Git parancsok: C:\Windows\System32\cmd.exe Microsoft Windows [Version ] Copyright (c) 2008 Microsoft Corporation. All rights reserved. C:\Users\UserName> C:\> mkdir CoolProject C:\> cd CoolProject C:\CoolProject > git init Initialized empty Git repository in C:/CoolProject/.git C:\CoolProject > notepad README.txt C:\CoolProject > git add. C:\CoolProject > git commit -m 'my first commit' [master (root-commit) 7106a52] my first commit 1 file changed, 1 insertion(+) create mode README.txt
© 2013, LogMeIn, Inc. | The Capability Cloud TM CONFIDENTIAL - FOR INTERNAL USE ONLY DEMO 14 Simple Git - Console
Visual Studio és a Git ● A Visual Studio támogatja a Git-tel történő munkát. Igaz leginkább az alap eseteket fedi le. Bizonyos feladatokhoz (sajnos?) még mindig elő kell venni a konzolt! ● Team Explorer-be integrálva ● Visual Studio 2012 Update 2-től támogatott © 2013, LogMeIn, Inc. | The Capability Cloud TM CONFIDENTIAL - FOR INTERNAL USE ONLY 15
Visual Studio és a Git © 2013, LogMeIn, Inc. | The Capability Cloud TM CONFIDENTIAL - FOR INTERNAL USE ONLY 16
Visual Studio és a Git – Hiányzó funkciók ● Csak konzolban ● Tag TFS néven label avagy cimkézés ● Stash TFS néven shelf. Egy átmeneti tároló azokra a változásokra amit nem akarunk azonnal commitolni. © 2013, LogMeIn, Inc. | The Capability Cloud TM CONFIDENTIAL - FOR INTERNAL USE ONLY 17
© 2013, LogMeIn, Inc. | The Capability Cloud TM CONFIDENTIAL - FOR INTERNAL USE ONLY DEMO 18 Visual Studio integráció
Előnyök Kicsi és gyors commitok Personal Branches Ad-Hoc Teams Flexibilis branching stratégiák Offline működés „Code Freeze” eltüntetés Autómatikus deployment © 2013, LogMeIn, Inc. | The Capability Cloud TM CONFIDENTIAL - FOR INTERNAL USE ONLY 19
Nehézségek Nagy repositoyk Nagy fájlok „Nincs” exkluzív lock Tanulási görbe Szerver adminisztráció Software Lifecycle Management Változtathatatlan történelem © 2013, LogMeIn, Inc. | The Capability Cloud TM CONFIDENTIAL - FOR INTERNAL USE ONLY 20