Windows.Git.Cygwin.SSH.Gitolite рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЧрд╛рдЗрдб

1. рдпрд╣ рд▓реЗрдЦ рдХрд┐рд╕ рд▓рд┐рдП рд╣реИ?


рд╡рд┐рдВрдбреЛрдЬ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкрд░ рдЧрд┐рдЯ рдлреАрдЪрд░реНрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЗрдЪреНрдЫрд╛ рдиреЗ рд╡рд┐рднрд┐рдиреНрди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд╕рд╛рде рдЯрд┐рдВрдХрд░ рдХреА рдЗрдЪреНрдЫрд╛ рдХреЛ рдЙрддреНрдкреНрд░реЗрд░рд┐рдд рдХрд┐рдпрд╛ред

2. рдЬрд╛рдЧрд░реВрдХрддрд╛


рдЖрдкрдХреЛ рдпрд╣ рдорд╣рд╕реВрд╕ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ Cygwin, SSH, GitExtenstions, Git, Gititite рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛

Cygwin рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╣реИ рдЬреЛ рд▓рд┐рдирдХреНрд╕ рд╡рд╛рддрд╛рд╡рд░рдг рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреА рдЕрдкрдиреА рдХрд╛рд▓реА рдЦрд┐рдбрд╝рдХреА рд╣реИ рдЬреЛ рд▓рд┐рдирдХреНрд╕ рдЯрд░реНрдорд┐рдирд▓ рд╡рд┐рдВрдбреЛ рдХреА рддрд░рд╣ рджрд┐рдЦрддреА рд╣реИ рдФрд░ рдХрд╛рдо рдХрд░рддреА рд╣реИред
MsysGit git рд╡рд╛рддрд╛рд╡рд░рдг рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рд╣реИ, рд▓реЗрдХрд┐рди рдмрд┐рдирд╛ ssh рд╕рд░реНрд╡рд░ рдХреЗ, рдЗрд╕рд▓рд┐рдП рд╣рдо рд╕рд░реНрд╡рд░ рдкрд░ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред рд╣рдо рдХреЗрд╡рд▓ рднрдВрдбрд╛рд░ рдХреЗ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
SSH ssh рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реЗ ssh рдХрдиреЗрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╣реИ, рдЬреЛ рд╕рднреА рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реИред
SSH рд╕рд░реНрд╡рд░ рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╣реИ рдЬреЛ ssh рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реЗ рдХрдиреЗрдХреНрд╢рди рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИред
рдлрд╝рд╛рдЗрд▓ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Git рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХрд╛ рдПрдХ рд╕рдВрдЧреНрд░рд╣ рд╣реИред
Gitolite рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╣реИ рдЬреЛ git рдХреЛ рд▓рдкреЗрдЯрддрд╛ рд╣реИ рдФрд░ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдкреНрд░рдмрдВрдзрди рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рддрд╛ рд╣реИ: рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдирд╛, рдЙрдирдХреА рдкрд╣реБрдВрдЪ, рдЖрджрд┐ред
GitExtensions рдПрдХ рд╡рд┐рдВрдбреЛрдЬрд╝ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╣реИ рдЬреЛ рдЧрд┐рдЯ рдФрд░ рдЬреАрдпреВрдЖрдИ рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд╕рдореНрдорд┐рд▓рд┐рдд рд╕реЗрдЯ рджреЛрдиреЛрдВ рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рд▓рдкреЗрдЯрддрд╛ рд╣реИ, рдЬреЛ рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ 05/08/10 рд╡рд┐рдХрд╛рд╕ рдХреЗ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рднреА рдПрдХреАрдХреГрдд рд╣реЛрддрд╛ рд╣реИред

рдЙрджреНрдпрдо рдореЗрдВ, рдЖрдкрдХреЛ рдПрд╕рдПрд╕рдПрдЪ рд╕реЗрд╡рд╛ рдХреА рдореЗрдЬрдмрд╛рдиреА рдХреЗ рд▓рд┐рдП рд╕рдВрд╕рд╛рдзрди рдЖрд╡рдВрдЯрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреА рдореЗрдЬрдмрд╛рдиреА рдХреЗ рд▓рд┐рдП рдбрд┐рд╕реНрдХ рд╕реНрдерд╛рдиред
рд╡рд╣ рд╡реНрдпрдХреНрддрд┐ рдЬреЛ SSH рд╕рд░реНрд╡рд░ рдХреА рд╕реЗрд╡рд╛ рдХрд░реЗрдЧрд╛, рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рддрдХ рдкрд╣реБрдВрдЪ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдЧрд╛ред
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ GitExtensions рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдкрдиреЗ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рдВрдХреНрд╢рди рдПрдирд╛рд▓реЙрдЧреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рд┐рдЦрд╛рдПрдВред
рдЙрдиреНрд╣реЗрдВ рдХреБрдЫ рд╡рд░реНрдХрдлреНрд▓реЛрдЬрд╝ рдкреНрд░рджрд╛рди рдХрд░реЗрдВ рдЬреЛ рдЧрд┐рдЯ рд╣рд╛рд╕рд┐рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

UPD: 08/05/2011
UPD: 01/30/2012

3. рд╣рдо рдкрд░рд┐рдгрд╛рдо рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВ: рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реЛрд╕реНрдЯрд┐рдВрдЧ


рд╣рдо Cygwin рдореЗрдВ Git, SSH рд╕рд░реНрд╡рд░, Gitolite рдХреА рдореЗрдЬрдмрд╛рдиреА рдХрд░реЗрдВрдЧреЗред
http://cygwin.com/setup.exe рдкрддреЗ рдкрд░ рдЬрд╛рдПрдВ
рдЗрдВрд╕реНрдЯреЙрд▓рд░ рдЪрд▓рд╛рдПрдВред
рдПрдХ рджрд░реНрдкрдг рдЬреЛрдбрд╝реЗрдВ http://cygwin.vc.ukrtel.net/
matway.org - рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реБрдЖред рдЕрджреНрдпрддрди 01.30.2012ред
рд░реВрд╕ рдХреЗ рдХрд░реАрдм рджрд░реНрдкрдгреЛрдВ рдХреА рд╕реВрдЪреА: cygwin.com/mirrors.html
рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдШрдЯрдХреЛрдВ рдХреЛ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рддреЗ рд╣реИрдВ:
рдиреЗрдЯ | рдЕрдзрд┐рднрд╛рд░рд┐рдд
рджреЗрд╡рд▓ | Git
рджреЗрд╡рд▓ | Git-рдкреВрд░реНрдг
рджреЗрд╡рд▓ | Git-рдЬреАрдпреВрдЖрдИ
рджреЗрд╡рд▓ | gitk
рд╕рдВрдкрд╛рджрдХреЛрдВ | рд╢рдХреНрддрд┐
рдЕрдЧрд▓рд╛ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдФрд░ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдЖрд╡рд╢реНрдпрдХ рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдкреЗрд╢рдХрд╢ рдХрд░реЗрдЧрд╛, рдЬреЛ рд╣рдо рд╕рд╣рдордд рд╣реИрдВ рдФрд░ рдЕрдЧрд▓рд╛ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред
рд╕реНрдЯрд╛рд░реНрдЯ рдореЗрдиреНрдпреВ / рд╕рд╛рдЗрдЧрд╡рд┐рди / рд╕рд┐рдЧрд╡рд┐рди рдЯрд░реНрдорд┐рдирд▓ рдЪреЗрдХ рдХрд░реЗрдВ:
рдЫрд╡рд┐

рдЕрд▓реЗрдХреНрд╕рдИ рдореЗрд░реА рд╡рд┐рдВрдбреЛ рд▓реЙрдЧрд┐рди, рдмреЗрд╕ рдорд╢реАрди рдХрд╛ рдирд╛рдо рд▓реЙрдЧрд┐рди рдХрд░реЗрдВред рдпрд╣ рд╕рдм рдПрдХ рд╕рд╛рде рдлрд┐рдЯ рдмреИрдарддрд╛ рд╣реИред

4. рд╣рдо рдкрд░рд┐рдгрд╛рдо рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВ: рдПрдХ рдПрд╕рдПрд╕рдПрдЪ рд╕рд░реНрд╡рд░ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛


рд╕рд┐рдЧрд╡рд┐рди рдЯрд░реНрдорд┐рдирд▓ рд▓реЙрдиреНрдЪ рдХрд░реЗрдВред
рд╣рдо SSH рд╕рд░реНрд╡рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ ssh-host-config рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред
рдЫрд╡рд┐

рдЫрд╡рд┐

рдЫрд╡рд┐

рдЫрд╡рд┐

рдЫрд╡рд┐

рдЫрд╡рд┐

рдЫрд╡рд┐

рд╣рдо рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рдмрд┐рдирд╛ / etc / sshd-config рдореЗрдВ рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рддреЗ рд╣реИрдВ:
рдЗрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рд░рджреНрдж рдХрд░реЗрдВ:
рдкрдмрдХреАрдЕрдереЗрдВрдЯрд┐рдХреЗрд╢рди рд╣рд╛рдБ
AuthorizedKeysFileред Ssh / рдЕрдзрд┐рдХреГрдд_рдХреАрдк

рд╕рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ рдЧрд┐рдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВрдЧреЗ, рдЖрдкрдХреЛ рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рдмрд┐рдирд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЧрд┐рдЯ (рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдирд╛рдо) рдЯреАрд╡реА рдореЛрдб рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрд╕рдПрд╕рдПрдЪ рд╕рд░реНрд╡рд░ рдореЗрдВ рд▓реЙрдЧрд┐рди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

SSH рд╕рд░реНрд╡рд░ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕рд┐рджреНрдзрд╛рдВрддред
рдЬрдм SSH рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реЗ git @ localhost рдХрдиреЗрдХреНрд╢рди рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрдиреЗрдХреНрдЯ рд╣реЛ рд░рд╣рд╛ рд╣реИ, рддреЛ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдпрд╣ рд╣реЛрддрд╛ рд╣реИ
ред ssh рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдХреБрдВрдЬреА рдХреЗ рдирд┐рдЬреА рднрд╛рдЧ рдХреА рдЦреЛрдЬ рдХрд░реЗрдВ, рдпрджрд┐ CYGWIN рдореЗрдВ рд╣реИ рддреЛ ~ / .ssh /, рдпрджрд┐ рд╡рд┐рдВрдбреЛрдЬрд╝ - рддреЛ c: / рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ / рдЖрдкрдХрд╛ рдирд╛рдо / .sshред
рдЗрд╕рдХреЗ рдмрд╛рдж, рд╕реНрдерд╛рдиреАрдпрд╣реЛрд╕реНрдЯ рд╕рд░реНрд╡рд░ рдкрд░ git рдкреНрд░реЛрдлрд╛рдЗрд▓ рдореЗрдВ рдЕрдзрд┐рдХреГрдд_рдХреА рдлрд╛рдЗрд▓ рдореЗрдВ, рдкрд╛рда рдХреА рдЦреЛрдЬ рдХреА рдЬрд╛рддреА рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдЖрдкрдХреЗ рд╡рд░реНрддрдорд╛рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдХреЗ рдмрд░рд╛рдмрд░ рдорд╛рд░реНрдХрд░ рд╣реЛред рдпрджрд┐ рдпрд╣ рд╕реНрдерд┐рдд рд╣реИ, рддреЛ рдЖрдкрдХреЛ рд╡рд╣ рдЯрд░реНрдорд┐рдирд▓ рдорд┐рд▓рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ git рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рд▓реЛрдб рд╣реЛрддреА рд╣реИред
рдЧреНрд░рд╛рд╣рдХ рд╕рд╛рдЗрдмрд░рд╡рд┐рди рдореЗрдВ рд╣реИрдВ, рдЧрд┐рдЯрдмрд╢ рдореЗрдВ рд╣реИрдВ, рдкреЛрдЯреАрди рдЬреИрд╕реЗ рд╣реИрдВред рд╣рдо ssh рдХреНрд▓рд╛рдЗрдВрдЯ рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдкреА рд░рдЦрддреЗ рд╣реИрдВ, рдЬреЛ рдХрд┐ рд╕рд╛рдЗрдмрд░рд╡рд┐рди рдореЗрдВ рд╣реИред
рдЗрд╕реЗ ssh рдХрдорд╛рдВрдб рджреНрд╡рд╛рд░рд╛ рддрд░реНрдХреЛрдВ git @ localhost рдХреЗ рд╕рд╛рде рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд╣рд╛рдБ git рдЙрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛ рдирд╛рдо рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдкреНрд░реЛрдлрд╛рдЗрд▓ рд╣рдо ssh рдФрд░ рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ (рдпрд╣ SSH рд╕рд░реНрд╡рд░ рдХрд╛ рдкрддрд╛ рд╣реИ)ред
рджрд░рдЕрд╕рд▓, рдЕрдм рд╣рдо рдЗрд╕реЗ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХрд╛рдо рдХрд░реЗрдВрдЧреЗред

  1. рд╣рдо git рдирд╛рдо рдХреЗ рддрд╣рдд рдПрдХ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛ рдкрд░рд┐рдЪрдп рджреЗрддреЗ рд╣реИрдВред рдпрд╣ рдирд╛рдо рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП рд╣реЛрдЧрд╛ред
    рдХрдВрдкреНрдпреВрдЯрд░ рдкреНрд░рдмрдВрдзрди рдЦреЛрд▓реЗрдВ -> рд╕реНрдерд╛рдиреАрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдФрд░ рд╕рдореВрд╣ -> рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-> pcm -> рдирдпрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ ->
    Git рдирд╛рдо, рдкрд╛рд╕рд╡рд░реНрдб 123456, рдЪреЗрдХрдорд╛рд░реНрдХ рдЫреЛрдбрд╝ рджреЗрдВ "рдкрд╛рд╕рд╡рд░реНрдб рдХрднреА рд╕рдорд╛рдкреНрдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ" -> рдареАрдХ рд╣реИ
    рд╕рд╛рдЗрдЧрд╡рд┐рди рдмреИрд╢ рд╢реЗрд▓ рдЦреЛрд▓реЗрдВ, рдХрдорд╛рдВрдб mkpasswd -l -u git >> / etc / passwd рджрд░реНрдЬ рдХрд░реЗрдВ
    рд╣рдо рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХреЛ рдкреБрдирд░реНрдЬреАрд╡рд┐рдд рдХрд░рддреЗ рд╣реИрдВ:
    рдЫрд╡рд┐
    рд╣рдо Ctrl + D рдпрд╛ рдирд┐рдХрд╛рд╕ рдХрдорд╛рдВрдб рджрдмрд╛рдХрд░ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рддреЗ рд╣реИрдВред
  2. рд╣рдо рдЕрдкрдиреЗ рд▓реЙрдЧрд┐рди рдХреЗ рд▓рд┐рдП рдПрдХ рдХреБрдВрдЬреА рдмрдирд╛рддреЗ рд╣реИрдВред рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд▓реЙрдЧрд┐рди рдЕрд▓реЗрдХреНрд╕реА рдХреЗ рд▓рд┐рдПред
    Ssh-keygen -t rsa рдХрдорд╛рдВрдб рдПрдХ рдлреЛрд▓реНрдбрд░ рдореЗрдВ рдПрдХ рдХреБрдВрдЬреА рдмрдирд╛рдПрдЧреА рдЬрд┐рд╕рдореЗрдВ рджреЛ рдлрд╛рдЗрд▓реЗрдВ рд╣реЛрдВрдЧреА
    id_rsa (рдирд┐рдЬреА рднрд╛рдЧ, рдЖрдкрдХреЗ рд╕рд╛рде рд╕рдВрдЧреНрд░рд╣реАрдд) рдФрд░ id_rsa.pub (рдХреБрдВрдЬреА рдХрд╛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рднрд╛рдЧ)ред
    рдЗрд╕рдХреЗ рдмрд╛рдж, git рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЕрдзрд┐рдХреГрдд_рдХреА рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреБрдВрдЬреА рдХрд╛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рднрд╛рдЧ рдЬреЛрдбрд╝реЗрдВ
    ssh-copy-id -i git @ localhost рдХрдорд╛рдВрдб рдХреЗ рдЬрд░рд┐рдПред
    рдЫрд╡рд┐
    рд╣рдо SSH рд╕рд░реНрд╡рд░ рдХрдорд╛рдВрдб рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ:
    рдЫрд╡рд┐
    рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рднрд╛рдЧ рдХреЛ git рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреЙрдкреА рдХрд░реЗрдВ:
    рдЫрд╡рд┐
    рд╣рдо рдЬрд╛рдВрдЪрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рд╣рдореЗрдВ рдЬрд╝рд░реВрд░рдд рд╣реИред Ssh git @ localhost рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдБ рдФрд░ рдЯрд░реНрдорд┐рдирд▓ рдЖрдордВрддреНрд░рдг рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВ
    git рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реЗред
    рдЫрд╡рд┐
    рд╕рдм рдХреБрдЫ рд╕реЗрдЯ рд╣реЛ рдЧрдпрд╛ред
    рдпрджрд┐ рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЪрд░рдг 10 рдкрд░ рдЬрд╛рдПрдВред

5. рдкрд░рд┐рдгрд╛рдо рдкрд░ рдЬрд╛ рд░рд╣рд╛ рд╣реИ: рдЬрд┐рдУрд▓рд╛рдЗрдЯ рд╕реЗрдЯрдЕрдк



6. рдкрд░рд┐рдгрд╛рдо рдкрд░ рдЬрд╛рдирд╛: GitExtensions рдХреА рд╕реНрдерд╛рдкрдирд╛



7. рдкрд░рд┐рдгрд╛рдо рдкрд░ рдЬрд╛ рд░рд╣рд╛ рд╣реИ: рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реЗрдЯрдЕрдк


рдЕрдм рдЖрдкрдХреЛ рд╡рд░реНрддрдорд╛рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рд╡рд┐рдВрдбреЛрдЬрд╝ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
  1. рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЕрд▓реЗрдХреНрд╕реА рдлрд╝рд╛рдЗрд▓ рд╡рд░реНрддрдорд╛рди рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХреЗ .ssh рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣реИ c: /users/Alexei/s.s/
  2. рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдЙрд╕реА рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣реИред
  3. рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЙрдиреНрд╣реЗрдВ c: \ cygwin \ home \ yourname \ .ssh \ config рдФрд░ рдЖрдкрдХреЗ рдирд╛рдо рд╕реЗ рд▓реЗрдирд╛ рд╣реЛрдЧрд╛
    рдФрд░ c: \ users \ your name \ .ssh \
  4. рдпрд╣ рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реИ, рдЗрд╕ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдЬрдм рдХрд╛рдо рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдЬрд┐рдУрд▓рд╛рдЗрдЯ рдХрд╛рд░реНрдпрдХреНрд░рдоред
    рд╢реБрд░реБрдЖрдд рдореЗрдВ, рдЙрд╕рдиреЗ рдЖрдкрдХрд╛ рдирд╛рдо рдФрд░ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдЖрдкрдХреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рдлрд╛рдЗрд▓реЗрдВ рддреИрдпрд╛рд░ рдХреАрдВред Git рдкреНрд░реЛрдлрд╛рдЗрд▓ рдХреЛ pubrozied_keys рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкрдм рд╕рдВрд╕реНрдХрд░рдг рднреЗрдЬрд╛ред
    рдФрд░ рд╕реЗрдЯрд┐рдВрдЧ рдХреЛ рдЕрдзрд┐рдХреГрдд_рдХреА рдореЗрдВ рдЗрд╕ рдХреБрдВрдЬреА рдореЗрдВ рдЬреЛрдбрд╝рд╛ред
    рдЖрдЗрдП рдЗрд╕ рд╕рдВрд╢реЛрдзрд┐рдд рдЕрдзрд┐рдХреГрдд_рдХреЛ рджреЗрдЦреЗрдВ
    рдЫрд╡рд┐
  5. рдЬрд╛рдирдХрд╛рд░реА рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ред
    рдХреБрдВрдЬреА рдХреЗ рдирд┐рдЬреА рднрд╛рдЧреЛрдВ рдХреЛ рдЕрдВрдд рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдмреНрд▓реЙрдХреЛрдВ рдореЗрдВ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИ: рдХрд┐рд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдФрд░ рдХрд┐рд╕ рдкрддреЗ рд╕реЗред
    рдкрд╣рд▓реА рдирд┐рдЬреА рдореЗрд░реА рдкрд╣рд▓реА рдХреБрдВрдЬреА id_rsa.pub рд╕реЗ рд╣реИред
    рджреВрд╕рд░рд╛ рдирд┐рдЬреА рдХреБрдВрдЬреА рдЕрд▓реЗрдХреНрд╕рдИ.рдкрдм рд╕реЗ рд╣реИ, рдЬреЛ рдЦреБрдж рдЧрд┐рдЯреЛрд▓рд┐рдЯ рдиреЗ рдкрд╣рд▓реЗ рд╣реА рдХрд┐рдпрд╛ рдерд╛; рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, gitolite рдХреБрдВрдЬреА рдореЗрдВ рдЙрдиреНрдирдд рдЬрд╛рдирдХрд╛рд░реА рдЬреЛрдбрд╝рддрд╛ рд╣реИ, рдЬреЛ рд╕рднреА рд╕рд┐рд╕реНрдЯрдо рдЗрдВрдЯрд░реИрдХреНрд╢рди рдХреЛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИред


8. рд╣рдо рдкрд░рд┐рдгрд╛рдо рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВ: рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд╛ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо



9. рд╣рдо рдкрд░рд┐рдгрд╛рдо рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ



10. рд╣рдо рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ


  1. SSH рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рд▓реЙрдЧрд┐рди
    рдЯреВрдЯреА рд╣реБрдИ рдЕрдзрд┐рдХреГрдд_рдХреА рдХреЗ рдХрд╛рд░рдг рд╕рднреАред
    рдпрд╛ ssh рд╕рд░реНрд╡рд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕, рдЬрд┐рд╕рдореЗрдВ рдЕрдзрд┐рдХреГрдд_рдХреА рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реИред
    рдЕрдЧрд░ рд╣рдо git рдпреВрдЬрд░ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рд╕реНрдЯреЗрдЬ рдкрд░ рд╣реИрдВ, рддреЛ рд╣рдо ssh-copy id рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдХреА рдХреЗ рд╡рд░реНрдЬрди рдХреЛ рдХреЙрдкреА рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЕрдзрд┐рдХреГрдд_рдХреАрдЯреНрд╕ рдХреЛ рдПрдбрд┐рдЯ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдкрдиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкреВрд░рд╛ рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд▓рд┐рдпрд╛ рд╣реИ, рддреЛ:
    /home/git/.gitolite/src/gl-setup-authkeys -batch /home/git/.gitolite/keydir
  2. Git @ gitolite рдЬреИрд╕реЗ рдкрддреЗ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ: рдкрд░реАрдХреНрд╖рдг
    /home/git/.gitolite/src/gl-setup-authkeys -batch /home/git/.gitolite/keydir
    рдЯреВрдЯреА рд╣реБрдИ рдЕрдзрд┐рдХреГрдд_рдХреА рдХреЗ рдХрд╛рд░рдг рд╕рднреАред рд╣рдо рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдЗрд╕ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЙрддреНрдкрдиреНрди рдХрд░рддреЗ рд╣реИрдВред
  3. рд▓рдЧрд╛рддрд╛рд░ рд╕рд╛рдЗрдмрд░ рдмрдЧ рдмреИрд╢ рд╢реЗрд▓ рд╕реЗ рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рдмрд┐рдирд╛ рд▓реЙрдЧ рдЗрди рдХрд░рдирд╛
    /home/git/.gitolite/src/gl-setup-authkeys -batch /home/git/.gitolite/keydir
    рдЯреВрдЯреА рд╣реБрдИ рдЕрдзрд┐рдХреГрдд_рдХреА рдХреЗ рдХрд╛рд░рдг, рд╣рдо рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдЗрд╕ рдЖрджреЗрд╢ рдХреЗ рд╕рд╛рде рдЙрддреНрдкрдиреНрди рдХрд░рддреЗ рд╣реИрдВред
    рдФрд░ рдЖрдк рднреА gitolite.rc рдореЗрдВ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
    $ENV{PATH}="/usr/local/bin:/usr/bin:/bin";
    рдЕрдкрдиреЗ рд╕рд╛рдзрди рд╕реЗ рд▓рдЧрд╛рдУред
  4. Windows рдФрд░ Cygwin рдХреЗ рдмреАрдЪ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рдХрд░реЗрдВ
    mkpasswd -l> / etc / passwd
    рдЕрдЧрд░ рдЖрдк ssh рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП рд▓реЙрдЧрдЗрди рдХреЛ рдлрд┐рд░ рд╕реЗ рдЕрд╕рд╛рдЗрди рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ gitolite рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд┐рд╕ рд▓реЙрдЧрдЗрди рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
  5. SSH рд╕рд░реНрд╡рд░ рд╣рдЯрд╛рдПрдВ
    cygrunsrv -R sshd
    рдпрд╣ рдХреЗрд╡рд▓ рд╡рд┐рдВрдбреЛрдЬрд╝ рд╕реЗ рд╕рд╛рдЗрдмрд░рд╕рд░реНрд╡рд░ ssh рд╕реЗрд╡рд╛ рдХреЛ рд╣рдЯрд╛ рджреЗрдЧрд╛, рд▓реЗрдХрд┐рди рд▓реЙрдЧрд┐рди рдмрдирд╛ рд░рд╣реЗрдЧрд╛ред
    рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЕрднреА рднреА рдлрд╝рд╛рдЗрд▓реЛрдВ рд╕реЗ рдкрдЯреНрдЯреА / рдЖрджрд┐ / ssh * рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
    рд╡рд┐рдВрдбреЛрдЬрд╝ рд╕реЗ рд╕рд╛рдЗрдмрд░рд╕рд░реНрд╡рд░ рд▓реЙрдЧрд┐рди рд╣рдЯрд╛рдПрдВ рдФрд░ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде / etc / passwd рдХреЛ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рдХрд░реЗрдВ
    mkpasswd -l >/etc/passwd

рдПрдХ рдмрдбрд╝реЗ рдиреЛрдЯ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рдзреНрдпрд╛рди рджреЗрдВ


Source: https://habr.com/ru/post/In125152/


All Articles