Manage GIT
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Manage GIT

on

  • 1,197 views

 

Statistics

Views

Total Views
1,197
Views on SlideShare
1,067
Embed Views
130

Actions

Likes
1
Downloads
9
Comments
0

2 Embeds 130

http://www.idg.ro 127
http://meltwaternews.com 3

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Manage GIT Presentation Transcript

  • 1. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ Incheiere Gestiunea repository-urilor folosind solutii Git , Linux and Open Source R˘zvan Deaconescu a razvan@rosedu.org 24 februarie 2011R˘zvan Deaconescu aGit Repositories
  • 2. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ Incheiere 1 Git 2 Gitolite 3 Gitweb 4 Hosted 5 Scenarii de utilizare 6 Recomand˘ri a 7 ˆ IncheiereR˘zvan Deaconescu aGit Repositories
  • 3. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereOutline 1 Git 2 Gitolite 3 Gitweb 4 Hosted 5 Scenarii de utilizare 6 Recomand˘ri a 7 ˆ IncheiereR˘zvan Deaconescu aGit Repositories
  • 4. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereSisteme de versionare a codului Version Control System (VCS), Source Code Management (SCM) repository, repository URL working copy/clone commit, checkout, push, pull, HEAD, branch, merge, tag, trunk centralizat: Subversion, Perforce descentralizat: Git, Mercurial, DarcsR˘zvan Deaconescu aGit Repositories
  • 5. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereGit model descentralizat: fiecare utilizator detine o copie , complet˘ a repository-ului a “very fast and scalable” dezvoltare neliniar˘ si distribuit˘ a , a facil de creat si gestionat branch-uri ,R˘zvan Deaconescu aGit Repositories
  • 6. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereURL-uri Git SSH (autentificare pe baz˘ de parol˘ sau chei) a a razvan@swarm.cs.pub.ro:git-repos/slides.git HTTP(S) http://swarm.cs.pub.ro/git/razvan-code.git gitdaemon git://github.com/vmchecker/vmchecker.gitR˘zvan Deaconescu aGit Repositories
  • 7. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereGit peste SSH avantaje securizat privat evitarea parolei (cheie public˘) a usor de configurat , dezavantaje problematic de partajat (ˆ general) necesit˘ un cont Unix ın aR˘zvan Deaconescu aGit Repositories
  • 8. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereGit peste HTTP avantaje universal disponibil (portul 80) configurare facil˘ ˆ cadrul unui server web a ın dezavantaje lent configurare suplimentar˘ pentru push (post-update hook) sau a autentificareR˘zvan Deaconescu aGit Repositories
  • 9. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereProtocolul Git avantaje rapid simplu dezavantaje posibilit˘ti reduse de configurare a permisiunilor (ˆ general a, ın read-only) configurare daemon/serviciu nou not Internet friendly port (9418)R˘zvan Deaconescu aGit Repositories
  • 10. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereOutline 1 Git 2 Gitolite 3 Gitweb 4 Hosted 5 Scenarii de utilizare 6 Recomand˘ri a 7 ˆ IncheiereR˘zvan Deaconescu aGit Repositories
  • 11. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereGitolite http://github.com/sitaramc/gitolite gestiune centralizat˘ a repository-urilor a acces pe baz˘ de chei publice SSH, f˘r˘ necesitatea unui cont a aa Unix command="command" ˆ authorized keys ın gestiunea accesului la repository-uri configurarea tot ˆ ıntr-un repository Git (repository-uri, acces, chei publice)R˘zvan Deaconescu aGit Repositories
  • 12. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereAvantaje folosire Gitolite gestiunea repository-urilor se realizeaz˘ centralizat a crearea repository-urilor se realizeaz˘ automat la push a controlul accesului posibilitate de administrare partajat˘ (accesul la repository-ul a de administrare)R˘zvan Deaconescu aGit Repositories
  • 13. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereOutline 1 Git 2 Gitolite 3 Gitweb 4 Hosted 5 Scenarii de utilizare 6 Recomand˘ri a 7 ˆ IncheiereR˘zvan Deaconescu aGit Repositories
  • 14. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereGitweb https://git.wiki.kernel.org/index.php/Gitweb interfat˘ web pentru vizualizarea repository-urilor ,aR˘zvan Deaconescu aGit Repositories
  • 15. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereAvantaje folosire Gitweb usor de configurat si instalat , , apt-get install gitweb interfat˘ de parcurgere a codului ˆ browser ,a ın publicare informatii: ownership, URls, description , download snapshots (.zip, .tgz)R˘zvan Deaconescu aGit Repositories
  • 16. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereOutline 1 Git 2 Gitolite 3 Gitweb 4 Hosted 5 Scenarii de utilizare 6 Recomand˘ri a 7 ˆ IncheiereR˘zvan Deaconescu aGit Repositories
  • 17. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereGitHub https://github.com/ “social coding” utilizatorul creeaz˘ repository-uri a poate invita alti utilizatori , organizatii (echipe) , wiki, issues, graphs HTTP, git, SSH (public key) comercial – repository-uri private, colaboratori privati, spatiu , ,R˘zvan Deaconescu aGit Repositories
  • 18. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereGitorious http://gitorious.org/ utilizatori, repository-uri, echipe (similar GitHub) instalabil pe sistemul local wiki, code review HTTP, git, SSH (public key) suport comercial – http://gitorious.com/ (nimic concret)R˘zvan Deaconescu aGit Repositories
  • 19. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereOutline 1 Git 2 Gitolite 3 Gitweb 4 Hosted 5 Scenarii de utilizare 6 Recomand˘ri a 7 ˆ IncheiereR˘zvan Deaconescu aGit Repositories
  • 20. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereSingle user repository local (f˘r˘ repository URL) aa git init . && git add . && git commit -m ’initial commit’ “backup” prin SSH ˆ cazul unui cont Unix ınR˘zvan Deaconescu aGit Repositories
  • 21. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheierePrivate party cont Unix partajat acces prin SSH (chei publice) usor personalizabil (hook-uri) ,R˘zvan Deaconescu aGit Repositories
  • 22. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheierePrivate project 1 Gitolite acces SSH pe baz˘ de chei publice a usor de configurat si administrat , , 2 HTTPS securizare + autentificare cˆnd se foloseste unui cont specializat (username/parol˘) a , a (LDAP, database etc.) Redmine repositories cˆnd este problematic accesul prin chei SSH (pentru Gitolite) aR˘zvan Deaconescu aGit Repositories
  • 23. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereFor the world 1 Gitolite pentru push (write updates) symlink-uri ˆ /var/cache/git si configurare a serverului web ın , (HTTP read-only access) 2 HTTPS HTTP pentru read-only HTTPS si autentificare pentru push , configurare Gitweb configurare git-daemon (read-only access) (serveste din , /var/cache/git)R˘zvan Deaconescu aGit Repositories
  • 24. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereOutline 1 Git 2 Gitolite 3 Gitweb 4 Hosted 5 Scenarii de utilizare 6 Recomand˘ri a 7 ˆ IncheiereR˘zvan Deaconescu aGit Repositories
  • 25. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereAdministrare Gitolite gestiunea facil˘, centralizat˘, scalabil˘ a repository-urilor a a a GitHub, Gitorious outsourcingR˘zvan Deaconescu aGit Repositories
  • 26. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereAll is text scripturi si fisiere de configurare , , LaTeX & LaTeX Beamer Inkscape – SVG, Dia – salvare ca fisier necomprimat (format , XML) fisiere de organizare/task-uri (Org-Mode ˆ Emacs) , ınR˘zvan Deaconescu aGit Repositories
  • 27. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereVersionare si “diff”-ing , versionarea facil˘ a fisierelor de configurare (/etc/apache2/) a , versionarea temelor submise (studiu de caz UPB) folosire de tag-uri pentru ani se lucreaz˘ peste acelasi “code base” a , nu se mai face un director pentru fiecare anR˘zvan Deaconescu aGit Repositories
  • 28. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereHook-uri post-receive trimis e-mail-uri/notific˘ri a creat arhive, compilat prezent˘ri/fisiere LaTeX, publicat a , resurse usor de integrat ˆ wiki-uri , ın link-ul nu se schimb˘, doar continutul acestuia a , problematic de integrat cu GitoliteR˘zvan Deaconescu aGit Repositories
  • 29. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereOutline 1 Git 2 Gitolite 3 Gitweb 4 Hosted 5 Scenarii de utilizare 6 Recomand˘ri a 7 ˆ IncheiereR˘zvan Deaconescu aGit Repositories
  • 30. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereResurse utile http://git-scm.com/ http://gitimmersion.com/index.html http://www.gitready.com/ http://progit.org/ http://github.com/sitaramc/gitolite https://git.wiki.kernel.org/index.php/Gitweb https://github.com/ http://gitorious.org/R˘zvan Deaconescu aGit Repositories
  • 31. Git Gitolite Gitweb Hosted Scenarii de utilizare Recomand˘ri a ˆ IncheiereˆIntreb˘ri a repository URL Git Gitolite Gitweb scenarii all is textR˘zvan Deaconescu aGit Repositories