рдЖрдкрдХреЗ рд╕рднреА рдлрд╝реЛрдЯреЛ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП git рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИред
рдЖрдк рдХреНрдпрд╛ рд╣рд╛рд╕рд┐рд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рдереЗ?
- рдПрдХ рд╣реАрдк (DCIM) рдореЗрдВ рддрд╕реНрд╡реАрд░реЗрдВ рдбрдВрдк рдХрд░реЗрдВ, рдФрд░ рдЬрдм рдЙрдиреНрд╣реЗрдВ рдлрд╝реЛрд▓реНрдбрд░реНрд╕ рдореЗрдВ рд╕реЙрд░реНрдЯ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рд╣реЛред
- рдПрдХ рдХрдВрдкреНрдпреВрдЯрд░ рд╕реЗ рдлрд╝реЛрдЯреЛ рдлреЗрдВрдХреЗрдВ, рдФрд░ рджреВрд╕рд░реЗ рд╕реЗ рдЙрдирдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВред
- рд╕рднреА рдХрдВрдкреНрдпреВрдЯрд░реЛрдВ рдкрд░ рдЬрд╛рджреБрдИ рд░реВрдк рд╕реЗ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рдлрд╝реЛрдЯреЛ рдФрд░ рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
- рддрд╛рдХрд┐ рдЖрдк рдлрд╝реЛрдЯреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░ рд╕рдХреЗрдВ, рд▓реЗрдХрд┐рди рдореВрд▓ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВред
- рд╕рдВрдкрд╛рджрди рдХрд╛ рдЗрддрд┐рд╣рд╛рд╕ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдПред
рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рдирд┐рдХрд▓рд╛, рдЬреАрдЖрдИрдЯреА рдХреЛ рдЗрд╕ рдХрд╛рд░реНрдп рдХреЗ рд╕рд╛рде рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдмрд╣реБрдд рдореБрд╢реНрдХрд┐рд▓ рд╣реИред
рдкрд░рд┐рдгрд╛рдореА рд╡рд┐рдиреНрдпрд╛рд╕, рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ
рдпрджрд┐ рдХреЗрд╡рд▓ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЕрдВрддрд┐рдо рдкреИрд░рд╛рдЧреНрд░рд╛рдл рджреЗрдЦреЗрдВред
рдореИрдВрдиреЗ рдкрд╛рдпрд╛ рдХрд┐ рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░ рдореБрдЭреЗ рдЖрд░реНрдХрд╛рдЗрд╡рд┐рдВрдЧ рдХреЛ рдмрдВрдж рдХрд░рдирд╛ рд╣реИ рддрд╛рдХрд┐ рдРрдб рдФрд░ рдХрдорд┐рдЯрдореЗрдВрдЯ рддреЗрдЬреА рд╕реЗ рдЖрдЧреЗ рдмрдврд╝реЗрдВред рдФрд░ рд╕рд░реНрд╡рд░ рдкрд░, рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдкрдХреЛ рдореЗрдореЛрд░реА рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдФрд░ рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдкреИрдХрд┐рдВрдЧ / рдЕрдирдкреИрдХ рдХрд░рдиреЗ рдХреА рдиреАрддрд┐ рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
Ssh рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреНрд▓реЛрдирд┐рдВрдЧ рдзреАрдореА рд╣реИ рдФрд░ рд╕рд░реНрд╡рд░ рдкрд░ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЗрд╕рд▓рд┐рдП, рдРрд╕реЗ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рд▓рд┐рдП "рдбрдВрдм" http рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реЛрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдкрдХреЛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдЧрд┐рдЯ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ 1.7.1 рдореЗрдВ рд╕реНрдореГрддрд┐ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреА рдХрдореА рд╣реИред
рдЕрднреА рднреА рд▓рд┐рдЦрдирд╛ рд╕рдВрднрд╡ рд╣реИ
*.* -delta
in
.gitattributes
, рдпрд╣ рдбреЗрд▓реНрдЯрд╛ рдкреИрдХреЗрдЬрд┐рдВрдЧ рдХреЛ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХрд░ рджреЗрдЧрд╛ред рдпрд╛рдиреА рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рдХреЗрд╡рд▓ рдПрдХреНрд╕рдлрд╝ рдбреЗрдЯрд╛ рдХреЛ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкреВрд░реЗ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдХреЙрдкреА рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдореИрдВрдиреЗ рдпрд╣рд╛рдВ рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред

рд╡рд┐рд╡рд░рдг
рд╕рд░реНрд╡рд░ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдЬрд┐рдУрд▓рд╛рдЗрдЯ рдХреЛ рдЪреБрдирд╛ред рдпрд╣ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧрд┐рдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрд╡рд░рдг рд╣реИред рджреНрд╡рд╛рд░рд╛ рдФрд░ рдмрдбрд╝реЗ, рдХреЗрд╡рд▓ рдЬрдВрдЧрд▓реА рд░реЗрдкреЛ рдХреЗ рдХрд╛рд░рдг - рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рдорд╛рдВрдЧ рдкрд░ рдмрдирд╛рдП рдЧрдПред рд▓реЗрдХрд┐рди рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЙрдирдХреА рдХреНрд╖рдорддрд╛ рднреА рдЙрдкрдпреЛрдЧреА рдереАред
Gitolite рд╕реНрдерд╛рдкрдирд╛
рд╕рд░реНрд╡рд░ рдкрд░
useradd git su - git git clone git://github.com/sitaramc/gitolite gitolite/install -to $HOME/bin gitolite setup -pk sam.pub
рд╕рдм рдХреБрдЫ
рдкреБрд╕реНрддрдХ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╣реИ , рдЕрдзреНрдпрд╛рдп 4.8 рдореЗрдВред
Gitolite рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рдо рдЬрд┐рдУрд▓рд╛рдЗрдЯ-рдПрдбрдорд┐рди рдХреЛ рдХреНрд▓реЛрди рдХрд░рддреЗ рд╣реИрдВ, рдмрджрд▓рд╛рд╡ рдХрд░рддреЗ рд╣реИрдВ, рдХрдорд┐рдЯ рдХрд░рддреЗ рд╣реИрдВ, рдкреБрд╢ рдХрд░рддреЗ рд╣реИрдВред рд╡рд╛рдЗрд▓реНрдб рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╕реЗрдЯ рдХрд░реЗрдВ - рдРрд╕реЗ рдмреНрд▓реЙрдХ рдХреЛ
gitolite-admin/conf/gitolite.conf
рдкрд╣рд▓рд╛ рдкреНрд░рдпреЛрдЧ (git рдореЗрдВ 3.7 рдЧреАрдЧрд╛рдмрд╛рдЗрдЯ рдлрд╝реЛрдЯреЛ рдЬреЛрдбрд╝рдХрд░)
рдЦрд╛рд▓реА рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреА рдХреНрд▓реЛрдирд┐рдВрдЧ рдХреЗ рдмрд╛рдж
Thumbs.db
рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рдореЗрдВ рдПрдХред
Thumbs.db
рдпреБрдХреНрдд рдПрдХ
.gitignore
рдлрд╝рд╛рдЗрд▓ рдЬреЛрдбрд╝реА рдЧрдИ рдереАред
рджреВрд╕рд░реА рдкреНрд░рддрд┐рдмрджреНрдз рдореЗрдВ, 3.7 рдЧреАрдЧрд╛рдмрд╛рдЗрдЯ рдХреА рдорд╛рддреНрд░рд╛ рдХреЗ рд╕рд╛рде 367 рдлрд╝рд╛рдЗрд▓реЛрдВ рд╡рд╛рд▓рд╛ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛ред
Jpg рдореЗрдВ 293 рддрд╕реНрд╡реАрд░реЗрдВ - 439 рдореЗрдЧрд╛рдмрд╛рдЗрдЯ
рдПрд╡реА рдореЗрдВ 37 рд╡реАрдбрд┐рдпреЛ - 3.26 рдЧреАрдЧрд╛рдмрд╛рдЗрдЯ
37 THM рдлрд╛рдЗрд▓реЗрдВ - 0.3 рдореЗрдЧрд╛рдмрд╛рдЗрдЯ
git clone git@my-server:Fotos-2013-03-01 cd 2013-03-01 echo Thumbs.db > .gitignore git add .gitignore git commit -m 'Initial commit' git add <>
9 рдорд┐рдирдЯ рдкреБрд╢ рдиреЗ рд▓реЛрдХрд▓ рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рдХреА, рдлрд┐рд░ 14 рдорд┐рдирдЯ рдлреЙрд░рд╡рд░реНрдбрд┐рдВрдЧ рдХреАред
рджреВрд╕рд░рд╛ рдкреНрд░рдпреЛрдЧ
рд╡рд┐рдЪрд╛рд░ рдЧрд┐рдд рдХреЛ рдЯреНрд╡рд┐рдХ рдХрд░рдирд╛ рд╣реИ рддрд╛рдХрд┐ рдпрд╣ рд╡реАрдбрд┐рдпреЛ рдФрд░ рдлрд╝реЛрдЯреЛ рдХреЛ рд╕рдВрдкреАрдбрд╝рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рди рдХрд░реЗред рдлрд╝рд╛рдЗрд▓ рдкреНрд░рдХрд╛рд░ рд╕реЗ рдмрдВрдж рдХреИрд╕реЗ рдХрд░реЗрдВ рдореБрдЭреЗ рдирд╣реАрдВ рдорд┐рд▓рд╛, рдореБрдЭреЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрдкреАрдбрд╝рди рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдирд╛ рдкрдбрд╝рд╛ред
рд╣рдо рдПрдХ рдЦрд╛рд▓реА рднрдВрдбрд╛рд░ рдХреНрд▓реЛрди рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╣реИрдВред
рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░
git clone git@my-server:Fotos-2013-03-02 cd 2013-03-02 git config core.bigFileThreshold 50m git config core.looseCompression 0 git config pack.compression 0
рдпреЗ рдХрдорд╛рдВрдб рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ (рд╡рд░реНрддрдорд╛рди рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рд▓рд┐рдП, рдпрд╛рдиреАред Init / config рдлрд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП) рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рд╕реЗрд╡ рдХрд░рддреЗ рд╣реИрдВред
core.bigFileThreshold
- 50 рдореЗрдЧрд╛рдмрд╛рдЗрдЯ (рдбрд┐рдлрд╝реЙрд▓реНрдЯ 512 рдореЗрдЧрд╛рдмрд╛рдЗрдЯ) рд╕реЗ рдмрдбрд╝реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдЖрдВрд╢рд┐рдХ рдкрд░рд┐рд╡рд░реНрддрди (
core.bigFileThreshold
рдХреА рдЦреЛрдЬ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИ
core.looseCompression
-
core.looseCompression
рджреНрд╡рд╛рд░рд╛ "рдвреАрд▓реА" рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╡рд╕реНрддреБрдУрдВ рдХреА рдкреИрдХрд┐рдВрдЧ рдХреЛ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХрд░ рджреЗрддрд╛ рд╣реИред
pack.compression
- рдПрдХ рдкреИрдХ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╡рд╕реНрддреБрдУрдВ рдХреЗ
pack.compression
рджреНрд╡рд╛рд░рд╛ рдкреИрдХреЗрдЬрд┐рдВрдЧ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИред
рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░
git add <>
рд╕рд░реНрд╡рд░ рдкрд░ рдкреБрд╢ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдХреЛрдИ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реЗрдЯрд┐рдВрдЧ рдирд╣реАрдВ рдереА (рдпрд╣ рдРрд╕рд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП)ред рд╕реНрдерд╛рдиреАрдп рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдвреАрд▓реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд░рд╣реА, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рд╕рд░реНрд╡рд░ рдкрд░ рдкреИрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ред рд▓реЗрдХрд┐рди рдкреИрдХреЗрдЯ рдХрд╛ рдЖрдХрд╛рд░ 3.7 рдЧреАрдЧрд╛рдмрд╛рдЗрдЯ рдерд╛ред рд╕рд░реНрд╡рд░ рдкрд░ рдХреЛрдИ pack.packsizelimit = 2g рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдирд╣реАрдВ рдереАрдВ (рд▓реЗрдХрд┐рди рд╡реЗ рднреА рдирд╣реАрдВ рдмрдЪреА рд╣реЛрдВрдЧреА)ред
Ssh рджреНрд╡рд╛рд░рд╛ рдПрдХ рдкреИрдХреЗрдЬ рдореЗрдВ 3.7 рдЬреА рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреА рдХреНрд▓реЛрдирд┐рдВрдЧ
git clone git@my-server:Fotos-2013-03-02
рдХреНрд▓реЛрдирд┐рдВрдЧ рдХреЗ рдмрд╛рдж, рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдкреИрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рдкреИрдХреЗрдЬ 2 рдЧреАрдЧрд╛рдмрд╛рдЗрдЯ рдХреЗ рд╕реНрдерд╛рдиреАрдп рдкреНрд░рддрд┐рд╖реНрдард╛рдиреЛрдВ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдЖрдХрд╛рд░ рдореЗрдВ 3.7 рдЧреАрдЧрд╛рдмрд╛рдЗрдЯ рдерд╛ред
рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░
git config --system -l | grep packsize pack.packsizelimit=2g
рд╕рд░реНрд╡рд░ рдорд╛рдЗрдЧреНрд░реЗрд╢рди
рдпрд╣ рдзрд╛рд░рдгрд╛ рдХрд┐ рдкреИрдХреЗрдЯ рдХреЗ рдЖрдХрд╛рд░ рдкрд░ рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреА рдХрдореА, рдмрд╣реБрдд рдмрдбрд╝реЗ-рдмрдбрд╝реЗ рдереНрд░реЗрд╢реЛрд▓реНрдб рдФрд░ рдореЗрдореЛрд░реА рдХреЗ рдЙрдкрдпреЛрдЧ рдкрд░ рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреА рдХрдореА рдХреЗ рдХрд╛рд░рдг рд╕рд░реНрд╡рд░ рдореИрдереБрди рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред
рдореИрдВрдиреЗ рд╕рд░реНрд╡рд░ рдкрд░ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдлрд┐рд░ рд╕реЗ рднреЗрдЬрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред рд╕рд░реНрд╡рд░ рдкрд░ рд╕реНрдерд╛рдкрд┐рдд
git config --system pack.packsizelimit 2g
рдФрд░ рдлрд┐рд░ рд╕реЗ, рд╕рд░реНрд╡рд░ рдкрд░ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛
git repack -A
рдЙрд╕рдХреЗ рдмрд╛рдж, рдЖрдХрд╛рд░ рдореЗрдВ 2 рдЧреАрдЧрд╛рдмрд╛рдЗрдЯ рддрдХ рдХреЗ рдкреИрдХреЗрдЬ рдмрдирд╛рдП рдЧрдП, рд▓реЗрдХрд┐рди рд╡рд┐рд╢рд╛рд▓ рдкреИрдХреЗрдЬ рдХреЛ рд╣рдЯрд╛рдпрд╛ рдирд╣реАрдВ рдЧрдпрд╛ред рдХрдЪрд░рд╛ рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рд╕реНрдореГрддрд┐ рдХреА рдХрдореА рд╕реЗ рдЧрд┐рд░ рдЧрдпрд╛, рдпрд╛ рдПрдХ рд╕реНрд╡реИрдк рдкрд░ рджрдо рдШреБрдЯ рдЧрдпрд╛ред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдореИрдВрдиреЗ рд╕рд┐рд╕реНрдЯрдо рд╕реЗрдЯрд┐рдВрдЧ рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛, рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдкрдВрдЬреАрдХрд░рдг рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ред
рдирдП рдлреЛрдЯреЛ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рд╣рдо рд▓рд┐рдЦреЗрдВрдЧреЗ
core.bigFileThreshold = 50m
рд╣рдо рддрд╕реНрд╡реАрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреНрдпреЗрдХ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдпрд╣ рд╕рдм рд▓рд┐рдЦреЗрдВрдЧреЗред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, gitolite рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВред
рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЖрдкрдХреЛ
.gitolite.rc
рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣рд╛рдБ рдПрдХ рдкрдВрдХреНрддрд┐ рд╣реИ
GIT_CONFIG_KEYS => '.*',
рдФрд░ рдпрд╣рд╛рдБ рд╡рд╣реА рд╣реИ рдЬреЛ рдЬрд┐рдУрд▓рд╛рдЗрдЯ рдХреЙрдиреНрдлрд┐рдЧ рдХреА рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛ред
рдпрджрд┐ рдЖрдк рдПрдХ рдмрдбрд╝реЗ
transfer.unpackLimit
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ редunpackLimit, рддреЛ git, рдЬрд┐рд╕рдореЗрдВ рд╣рдорд╛рд░рд╛ рдлреЛрдХрд╕ 3.7 рдЧреАрдЧрд╛рдмрд╛рдЗрдЯ рд╣реЛрддрд╛ рд╣реИ, рдПрдХ рдкреИрдХреЗрдЬ рдХреЗ рд╕рд╛рде рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИред рд╕реАрдорд╛ рдХреЗ рдмрд╛рд╡рдЬреВрдж
pack.packSizeLimit = 2g
ред
gc.auto 300
рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдвреАрд▓реА рд╡рд╕реНрддреБрдПрдВ рд╕рд░реНрд╡рд░ рдкрд░ рднрдВрдбрд╛рд░ рдореЗрдВ рдЬрдорд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИрдВред "
git gc --auto
" рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЬрдм рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рддреЛ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рд╕реНрдерд┐рд░ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ,
gc.auto = 6700
ред
рддреАрд╕рд░рд╛ рдкреНрд░рдпреЛрдЧ
рд╣рдо рдирдП рдЦрд╛рд▓реА рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдХреНрд▓реЛрди рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЬрд╛рдВрдЪрддреЗ рд╣реИрдВ рдХрд┐ рд╕рд░реНрд╡рд░ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдкрдВрдЬреАрдХреГрдд рд╣реИрдВред
рдЧреНрд░рд╛рд╣рдХ
git clone git@my-server:Fotos-2013-03-03 cd 2013-03-03
рд╕рд░реНрд╡рд░
cd repositories/Fotos-2013-03-03 cat config
рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреА рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЙрдкреА рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХреА рдЧрдИ рд╣реИред рдЗрд╕рд▓рд┐рдП, 3.7 рдЧреАрдЧрд╛рдмрд╛рдЗрдЯ рдлрд╝реЛрдЯреЛ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЖрдкрдХреЛ рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
рдЧреНрд░рд╛рд╣рдХ
git config core.bigFileThreshold 50m git config core.looseCompression 0 git config pack.compression 0
рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рд╕рд░реНрд╡рд░ рджреЛрдиреЛрдВ рдиреЗ рдвреАрд▓реЗ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ред
Ssh рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирдП рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдХреНрд▓реЛрди рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рд╡рд┐рдлрд▓ рд░рд╣рд╛ред рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдкрд░, 1.7.1 рдЖрдЙрдЯ рдСрдл рдореЗрдореЛрд░реА рдХреЗ рд╕рд╛рде рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реЛ рдЧрдпрд╛ред
рдЕрджреНрдпрддрди рдЕрджреНрдпрддрдирд╕рд░реНрд╡рд░ рдкрд░ git рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ
рдХрд┐рд╕реА рднреА рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдПрдХ рдХрд╛рдо рдХрд░ рд░рд╣реЗ git рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (yum install git)
рд╕рд░реНрд╡рд░ рдкрд░
рддреАрд╕рд░реЗ рдкреНрд░рдпреЛрдЧ рдХреА рдирд┐рд░рдВрддрд░рддрд╛ред
рдЕрдкрдбреЗрдЯ рдХреЗ рдмрд╛рдж, рдореЗрдореЛрд░реА рд╕реЗ рдЧрд┐рд░рдирд╛ рдмрдВрдж рд╣реЛ рдЧрдпрд╛ред рд▓реЗрдХрд┐рди рдХреНрд▓реЛрдирд┐рдВрдЧ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ, рдореИрдВрдиреЗ рд╕рднреА рдореЗрдореЛрд░реА рдХреЛ рдЪреБрдирд╛ - 1 рдЧреАрдЧрд╛рдмрд╛рдЗрдЯ, рд╕реНрдерд╛рдирд╛рдВрддрд░рдг рдХреА рд╢реБрд░реБрдЖрдд рдХреЗ рдмрд╛рдж рдореИрдВрдиреЗ рдЗрд╕реЗ 250 рдореЗрдЧрд╛рдмрд╛рдЗрдЯ рддрдХ рдШрдЯрд╛ рджрд┐рдпрд╛ред
рдХреНрд▓реЛрдирд┐рдВрдЧ рдореЗрдВ рд╣реА 48 рдорд┐рдирдЯ рд▓рдЧ рдЧрдПред рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░, рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдЖрдХрд╛рд░ рдореЗрдВ 3.7 рдЧреАрдЧрд╛рдмрд╛рдЗрдЯ рдХрд╛ рдПрдХ рдкреИрдХ рдерд╛ред
рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдЯреЗрдЯрд┐рдХ HTTP
рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдкрд░ рд╕рд░реНрд╡рд░ рдкрд░ рдХреЛрдИ рдХрд╛рдо рдХрд░рдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИред
рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, git http рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдкреНрд░рддреНрдпреЗрдХ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдЕрдкрдбреЗрдЯ рдХреЗ рдмрд╛рдж
git update-server-info
рджреЗрдиреА рд╣реЛрдЧреАред рдпрд╣ рдЖрдорддреМрд░ рдкрд░ рд╣реБрдХ / рдкреЛрд╕реНрдЯ-рдЕрдкрдбреЗрдЯ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдФрд░ рдЧрд┐рдЯ рдореЗрдВ рдЗрд╕ рд╣реБрдХ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рднреА рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рдЖрджреЗрд╢ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИред
рд╣рдо рдПрдХ рдЙрджрд╛рд╣рд░рдг рд▓реЗрдВрдЧреЗ, рдФрд░ рд╣рдо рдЗрд╕ рд╣реБрдХ рдХреЛ рд╕рднреА рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рджрд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рдУрд▓рд╛рдЗрдЯ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВрдЧреЗред
рд╕рд░реНрд╡рд░ рдкрд░
cp repositories/testing.git/hooks/post-update.sample .gitolite/hooks/common/post-update gitolite setup --hooks-only
рдЕрдм, рдЕрдЧрд▓реЗ рдЕрджреНрдпрддрди рдХреЗ рдмрд╛рдж, рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА http рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реЛрдЧреАред
Http рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд╡рд┐рд╡рд░рдг рдореЗрдВ рдЦреБрджрд╛рдИ рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдПрдХ "рдЦрд┐рд▓реМрдирд╛" рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реВрдВрдЧрд╛ред рдлреЛрд▓реНрдбрд░
/home/git/http-root
рдмрдирд╛рдПрдБред рдЗрд╕рдореЗрдВ рдПрдХ
git->../repositories
рдЬреЛрдбрд╝реЗрдВ
git->../repositories
ред рдФрд░ рдореИрдВ рд╡рд╣рд╛рдВ рд╕реЗ рдПрдХ "рдЦрд┐рд▓реМрдирд╛" рд╕рд░реНрд╡рд░ рд▓реЙрдиреНрдЪ рдХрд░реВрдВрдЧрд╛
рд╕рд░реНрд╡рд░ рдкрд░
python -m SimpleHTTPServer > ../server-log.txt 2>&1 &
рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░
git clone http://my-server:8000/git/Fotos-2013-03-05.git
рд░рдирдЯрд╛рдЗрдо 4 рдорд┐рдирдЯ! 4 рдорд┐рдирдЯ рдореЗрдВ 3.7 рдЧреАрдЧрд╛рдмрд╛рдЗрдЯ! рдпрд╣ рд╣рдореЗрдВ рд╕реВрдЯ рдХрд░рддрд╛ рд╣реИред
рдирд┐рд╖реНрдХрд░реНрд╖
Git рдХреЗ рд╕рд╛рде рдмрдбрд╝реЗ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреА рд╕реЗрд╡рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХреНрд▓реЛрди рдФрд░ Fetch рдХреЛ http рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВ рдФрд░ рдЕрдзрд┐рдорд╛рдирддрдГ рдЧрд┐рдЯ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВред
рд╕рд░реНрд╡рд░ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА
git config core.bigFileThreshold 50m
# рд╡реАрдбрд┐рдпреЛ рдореЗрдВ git config core.bigFileThreshold 50m
рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВgit config core.looseCompression 0
# рдХреНрд░рдо рдореЗрдВ рдвреАрд▓реА рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВgit config pack.compression 0
# рдкреИрдХ рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣рд┐рдд рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПgit config pack.depth 10
# git config pack.depth 10
рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ 10 (50 рдХреЗ рдмрдЬрд╛рдп) рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВgit config pack.deltaCacheSize 128m
# git config pack.deltaCacheSize 128m
рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреЗ рдХреИрд╢ рд╕реЗ рд╕реНрд╡реИрдкрд┐рдВрдЧ рд╣реЛ рд╕рдХрддреА рд╣реИgit config pack.packSizeLimit 2g
# рдЕрдзрд┐рдХрддрдо рдкреИрдХреЗрдЯ рдЖрдХрд╛рд░ рд╕реАрдорд╛git config pack.windowMemory 128m
# рдореЗрдореЛрд░реА рдХреА рдкреИрдХреЗрдЬрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рд╕реАрдорд╛git config transfer.unpackLimit 2147483647
# рдкреБрд╢ рдкреИрдХреЗрдЯ рддрднреА рдЫреЛрдбрд╝реЗрдВ, рдЬрдм рдЙрдирдХреЗ рдкрд╛рд╕ рдХрдИ рдСрдмреНрдЬреЗрдХреНрдЯ рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛрдВgit config gc.auto 300
# рдпрджрд┐ 300 рд╕реЗ рдЕрдзрд┐рдХ рдвреАрд▓реА рд╡рд╕реНрддреБрдПрдВ рдЬрдорд╛ рд╣реЛрддреА рд╣реИрдВ, рддреЛ рдкреИрдХ рдХрд░реЗрдВ- HTTP рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд░реАрдб рдРрдХреНрд╕реЗрд╕ рдХрд░реЗрдВ (рдбрдореНрдм http, рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЧрд┐рдЯреЛрд▓рд┐рдЯ рд╕реНрдорд╛рд░реНрдЯ рдирд╣реАрдВ)
рдЧреНрд░рд╛рд╣рдХ рднрдВрдбрд╛рд░
- рдХреНрд▓реЛрди рдФрд░ http рджреНрд╡рд╛рд░рд╛ рдЕрджреНрдпрддрди
- рдкреНрд░рддрд┐рдмрджреНрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкреБрд╢ рдХреЗ рд▓рд┐рдП url рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
git remote set-url origin --push git@my-server:Fotos-2013-03-05
git config core.bigFileThreshold 50m
# рд╡реАрдбрд┐рдпреЛ рдореЗрдВ git config core.bigFileThreshold 50m
рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВgit config core.looseCompression 0
# рдХреНрд░рдо рдореЗрдВ рдвреАрд▓реА рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВgit config pack.compression 0
# рдкреИрдХ рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣рд┐рдд рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
рдореБрдЭреЗ рдЗрд╕реЗ рд╕реБрд▓рдЭрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред