-
1. Ćvod
-
2. ZƔklady prƔce se systƩmem Git
-
3. VÄtve v systĆ©mu Git
- 3.1 VÄtve v kostce
- 3.2 ZĆ”klady vÄtvenĆ a sluÄovĆ”nĆ
- 3.3 SprĆ”va vÄtvĆ
- 3.4 Postupy pÅi prĆ”ci s vÄtvemi
- 3.5 VzdĆ”lenĆ© vÄtve
- 3.6 PÅesklĆ”dĆ”nĆ
- 3.7 ShrnutĆ
-
4. Git na serveru
- 4.1 Protokoly
- 4.2 ZprovoznÄnĆ Gitu na serveru
- 4.3 GenerovĆ”nĆ veÅejnĆ©ho klĆÄe SSH
- 4.4 NastavenĆ serveru
- 4.5 DƩmon Git
- 4.6 Chytrý HTTP
- 4.7 GitWeb
- 4.8 GitLab
- 4.9 Možnosti hostovĆ”nĆ u tÅetĆ strany
- 4.10 ShrnutĆ
-
5. Distribuovaný Git
-
6. GitHub
-
7. Git Tools
- 7.1 Revision Selection
- 7.2 Interactive Staging
- 7.3 Stashing and Cleaning
- 7.4 Signing Your Work
- 7.5 Searching
- 7.6 Rewriting History
- 7.7 Reset Demystified
- 7.8 Advanced Merging
- 7.9 Rerere
- 7.10 LadÄnĆ v systĆ©mu Git
- 7.11 Submodules
- 7.12 Bundling
- 7.13 Replace
- 7.14 Credential Storage
- 7.15 ShrnutĆ
-
8. Customizing Git
- 8.1 Git Configuration
- 8.2 Atributy Git
- 8.3 Git Hooks
- 8.4 An Example Git-Enforced Policy
- 8.5 ShrnutĆ
-
9. Git a ostatnà systémy
- 9.1 Git as a Client
- 9.2 Migrating to Git
- 9.3 ShrnutĆ
-
10. Git Internals
- 10.1 Plumbing and Porcelain
- 10.2 Git Objects
- 10.3 Git References
- 10.4 BalĆÄkovĆ© soubory
- 10.5 The Refspec
- 10.6 PÅenosovĆ© protokoly
- 10.7 SprƔva a obnova dat
- 10.8 Environment Variables
- 10.9 ShrnutĆ
-
A1. Appendix A: Git in Other Environments
- A1.1 Graphical Interfaces
- A1.2 Git in Visual Studio
- A1.3 Git in Eclipse
- A1.4 Git in Bash
- A1.5 Git in Zsh
- A1.6 Git in Powershell
- A1.7 ShrnutĆ
-
A2. Appendix B: Embedding Git in your Applications
- A2.1 Command-line Git
- A2.2 Libgit2
- A2.3 JGit
-
A3. Appendix C: Git Commands
- A3.1 Setup and Config
- A3.2 Getting and Creating Projects
- A3.3 Basic Snapshotting
- A3.4 Branching and Merging
- A3.5 Sharing and Updating Projects
- A3.6 Inspection and Comparison
- A3.7 Debugging
- A3.8 Patching
- A3.9 Email
- A3.10 External Systems
- A3.11 Administration
- A3.12 Plumbing Commands
4.7 Git na serveru - GitWeb
GitWeb
Když už mĆ”te ke svĆ©mu projektu nastavena zĆ”kladnĆ oprĆ”vnÄnĆ pro ÄtenĆ/zĆ”pis a pouze pro ÄtenĆ, možnĆ” budete chtĆt zÅĆdit jednoduchĆ© zobrazenĆ formou webových strĆ”nek. Git se dodĆ”vĆ” s CGI scriptem nazvaným GitWeb, který se pro tento ĆŗÄel obÄas použĆvĆ”.

Pokud si chcete vyzkouÅ”et, jak by GitWeb vypadal pro vÔŔ projekt, nabĆzĆ Git pÅĆkaz, jĆmž lze spustit doÄasnou instanciāāāpokud mĆ”te v systĆ©mu nainstalovĆ”n lehký server jako lighttpd
nebo webrick
.
Na linuxových poÄĆtaÄĆch je lighttpd
Äasto nainstalovĆ”n, takže se vĆ”m ho možnĆ” v adresĆ”Åi vaÅ”eho projektu povede spustit pÅĆkazem git instaweb
.
Pokud použĆvĆ”te Mac, dodĆ”vĆ” se systĆ©m Leopard s pÅedinstalovaným Ruby, takže bude asi nejlepŔà zkusit webrick
.
Pokud chcete instaweb
spustit s nÄÄĆm jiným než s lighttpd
, použijte pÅi spuÅ”tÄnĆ volbu --httpd
.
$ git instaweb --httpd=webrick
[2009-02-21 10:02:21] INFO WEBrick 1.3.1
[2009-02-21 10:02:21] INFO ruby 1.8.6 (2008-03-03) [universal-darwin9.0]
TĆm se spustĆ HTTPD server na portu 1234 a pak se automaticky spustĆ webový prohlĆžeÄ, který se otevÅe na odpovĆdajĆcĆ strĆ”nce.
NenĆ to nic obtĆžnĆ©ho.
Až skonÄĆte a budete chtĆt server vypnout, spusÅ„te stejný pÅĆkaz s volbou --stop
:
$ git instaweb --httpd=webrick --stop
Chcete-li pro svÅÆj tým nebo pro vĆ”mi hostovaný open-source projekt spustit webovĆ© rozhranĆ na serveru trvale, budete muset zprovoznit obsluhu tohoto CGI skriptu na vaÅ”em bÄžnĆ©m webovĆ©m serveru.
V nÄkterých linuxových distribucĆch existuje balĆÄek gitweb
, který by se mÄl dĆ”t nainstalovat pomocĆ apt
nebo yum
. Takže nejdÅĆve zkuste tuto možnost.
RuÄnĆ instalaci skriptu probereme velmi rychle.
Nejprve je tÅeba zĆskat zdrojový kód systĆ©mu Git, s nĆmž je GitWeb distribuovĆ”n, a vygenerovat pÅizpÅÆsobený CGI skript:
$ git clone git://git.kernel.org/pub/scm/git/git.git
$ cd git/
$ make GITWEB_PROJECTROOT="/opt/git" prefix=/usr gitweb
SUBDIR gitweb
SUBDIR ../
make[2]: `GIT-VERSION-FILE' is up to date.
GEN gitweb.cgi
GEN static/gitweb.js
$ sudo cp -Rf gitweb /var/www/
VÅ”imnÄte si, že pÅĆkazu musĆte pomocĆ promÄnnĆ© GITWEB_PROJECTROOT
sdÄlit, kde najde vaÅ”e gitovĆ© repozitĆ”Åe.
NynĆ musĆte zajistit, aby Apache použĆval GitWeb jako CGI skript. Pro tento ĆŗÄel můžete pÅidat VirtualHost:
<VirtualHost *:80>
ServerName gitserver
DocumentRoot /var/www/gitweb
<Directory /var/www/gitweb>
Options ExecCGI +FollowSymLinks +SymLinksIfOwnerMatch
AllowOverride All
order allow,deny
Allow from all
AddHandler cgi-script cgi
DirectoryIndex gitweb.cgi
</Directory>
</VirtualHost>
Zopakujme, že GitWeb může být obsluhovĆ”n jakýmkoliv webovým serverem podporujĆcĆm CGI nebo Perl. Pokud chcete použĆt nÄjaký jiný, nemÄlo by být jeho nastavenĆ obtĆžnĆ©.
V tomto okamžiku byste mÄli být schopni prohlĆžet svĆ© repozitĆ”Åe online na adrese http://gitserver/
.