120 likes | 389 Views
Praktisk livredning med git. Miniseminar NTNU, 22. september 2011 Åsmund Eldhuset. Hvem kjenner seg igjen her?. Hva er et versjonskontrollsystem?. Et system for å holde styring på... Programkode HTML og CSS LaTeX-dokumenter Hva som helst som er ren tekst
E N D
Praktisk livredning med git Miniseminar NTNU, 22. september 2011 Åsmund Eldhuset
Hva er et versjonskontrollsystem? • Et system for å holde styring på... • Programkode • HTML og CSS • LaTeX-dokumenter • Hva som helst som er ren tekst • Vedlikeholder en fullstendig historikk over alle endringer • Kan spole tilbake til en tidligere tilstand • Kan vise hvem som har gjort endringer • Kan la folk jobbe på de samme filene samtidig uten å forstyrre hverandre • Endringene slås automatisk sammen etterpå
Git vs. andre versjonskontrollsystemer • Versjonskontrollsystemer kan være... • Sentraliserte • SVN, CVS, TFS, ... • Historikken finnes på en sentral server; nesten alle operasjoner går mot denne • Distribuerte • Git, Mercurial, Bazaar, ... • Hele historikken finnes lokalt; fleste operasjoner gjøres lokalt • Kan likevel samarbeide via en sentralisert server • Distribuerte systemer er generelt sett mer fleksible • Git er ekstremt kraftig, men... • Brattere læringskurve • Litt lettere å skyte seg selv i foten • Mercurial (Hg) ligner på git, men er lettere (se hginit.com)
Installasjon Anbefaler MSYSGit med GitExtensions Litt knot på Windows, men går stort sett bra Må sette opp PuTTY, PuTTYgen og Pageant hvis du skal jobbe mot en server
Hva ligger i repositoryet? 22.09.2011 01:29:18 – Åsmund Eldhuset hello.txt +Enjoy it! Repository Working directory hello.py +print "Hello world!" hello.txt Hello there! It's a lovely day. Enjoy it! 21.09.2011 20:18:24 – Jonas Follesø hello.txt -Hello world! +Hello there! hello.py print "Hello world!" 21.09.2011 19:15:01 – Anders Hammervold hello.txt +It's a lovely day. 21.09.2011 18:23:48 – Åsmund Eldhuset hello.txt +Hello world!
git fetch Local Remote
git pull(egen branch) Local Remote
git pull(annen branch) Local Remote
github – fork me, baby! • Populær nettside som hoster git-repos for open source-prosjekter gratis • Kjekt hvis man skal samarbeide om et prosjekt • Kan også betale for å få private repos (vi bruker dette i BEKK) • Kan også fork'e andres prosjekter, gjøre forbedringer og sende committene tilbake
Åsmund Eldhuset Konsulent, Avdeling Trondheim 959 39 826 aasmund.eldhuset@bekk.no