2012 рдХрд╛ рдЕрдВрдд рдЙрдерд▓-рдкреБрдерд▓ рдореЗрдВ рдерд╛, рдФрд░ рдХрд┐рд╕реА рддрд░рд╣ рдореБрдЭреЗ рджреЛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЦрдмрд░реЗрдВ рдпрд╛рдж
рдЖрдИрдВ :
GitLab 4.0 рджрд┐рд╕рдВрдмрд░ рдореЗрдВ рдмрд╛рд╣рд░ рдЖрдпрд╛, рдФрд░
GitLab Continuous Integration Server рдирд╡рдВрдмрд░ рдХреЗ рдордзреНрдп рдореЗрдВ рд╕рд╛рдордиреЗ рдЖрдпрд╛ред
GitLab рдПрдХ рдмрдВрдж рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдХреЗ рдЕрдВрджрд░ git рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреА рдореЗрдЬрдмрд╛рдиреА рдХреЗ рд▓рд┐рдП рдПрдХ рд╢рд╛рдирджрд╛рд░ FOSS рд╕рдорд╛рдзрд╛рди рд╣реИред рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛рдлреА рд╣рдж рддрдХ GitHub рдХреЗ рд╕рдорд╛рди рд╣реИ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдмреАрдЪ рдореВрд▓рднреВрдд рдкреНрд░рд╢рд╛рд╕рди рдФрд░ рд╢рдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ, рдЗрд╢реНрдпреВ рдЯреНрд░реИрдХрд░, рд╡рд┐рдХреА, рдХреЛрдб рд╕рдореАрдХреНрд╖рд╛ рдФрд░ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз (GitHub рдкрд░ рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдХрд╛ рдПрдХ рдПрдирд╛рд▓реЙрдЧ) рдЙрдкрд▓рдмреНрдз рд╣реИрдВред рдФрд░ рдЕрдм, рдореЗрд░реЗ рд▓рд┐рдП, рдПрдХ рдЕрд╕рд╛рдзрд╛рд░рдг рдкреНрд▓рд╕ GitLab CIS рдХреЗ рд╕рд╛рде рдПрдХреАрдХрд░рдг рд╣реИред
GitLab CIS - рдпрджрд┐ GitLab GitHub рдХреЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ, рддреЛ GitLab CIS рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдЯреНрд░реИрд╡рд┐рд╕ CI рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдмрдирдирд╛ рд╣реИред рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рдЙрдкрдпреБрдХреНрдд рд╣реИ: рдЧрд┐рдЯ рдкреБрд╢ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд▓реЙрдиреНрдЪ, рдмреНрд░рдВрдЪ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рдмрд┐рд▓реНрдб, рдХрд┐рд╕реА рднреА рдЧрд┐рдЯ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рд╕рд╛рде рдПрдХреАрдХрд░рдг, рдФрд░ рд╡рд░реНрддрдорд╛рди рдирд┐рд░реНрдорд╛рдг рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рд╕рд╛рде рдПрдХ рдмрд┐рд▓реНрд▓рд╛ред
рд╕рднреА рдХреЗ рд▓рд┐рдП рдХреЛрдб рд╕рд╛рдордЧреНрд░реА рдХреЗ рд▓рд┐рдП рд╕реНрд╡рдпрдВ-рд╣реЛрд╕реНрдЯ рдХрд┐рдП рдЧрдП рд╕рдорд╛рдзрд╛рди рдЦреЛрдЬрдиреЗ рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХрд╛рд░рдг рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрдзрд┐рдХрд╛рдВрд╢ рднрд╛рдЧ рдХреЗ рд▓рд┐рдП рд╡реЗ рдХрд╛рдлреА рд╕реНрдкрд╖реНрдЯ рд╣реИрдВ рдФрд░ рд╕реБрд░рдХреНрд╖рд╛ рдФрд░ рдкрд╛рд░рджрд░реНрд╢рд┐рддрд╛ рдХреА рдЦреЛрдЬ рдХреЗ рдХрд╛рд░рдг рд╣реИрдВ, рдЬреЛ рд╕рд╛рд╕ рдХреЗ рд╕рд╛рде рд╣рд╛рд╕рд┐рд▓ рдХрд░рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИред
рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд╣реИ, рдорд╛рдореВрд▓реА рдпреВрдХреНрд░реЗрдиреА рд▓реЛрдЧреЛрдВ
рджрд┐рдорд┐рддреНрд░реА Zaporozhets рдФрд░ Valery Sizov рдЖрдЪрд░рдг рдФрд░ рдкрд░реНрдпрд╡реЗрдХреНрд╖рдг рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред
рдЧрд┐рдЯрд▓реИрдм 4.0
рдЖрд╡реЗрджрди рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди:
- рдирдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдПрдХ рдЕрд▓рдЧ рдирд╛рдорд╕реНрдерд╛рди рдорд┐рд▓рддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП gitlab / рдпреЛрдирд┐)
- рдкреНрд░рддреНрдпреЗрдХ рд╕рдореВрд╣ рдХреА рдЬрд┐рдУрд▓рд╛рдЗрдЯ рдореЗрдВ рдЕрдкрдиреА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╣реИ
- рд╕рдореВрд╣ рдХреА рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдЕрдкрдиреА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рдЕрдВрджрд░ рд▓реЗ рдЬрд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ (рдЕрджреНрдпрддрди рдХрд┐рдП рдЬрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ)
- рд╕рдореВрд╣ рдХреЗ рдмрд┐рдирд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдБ рдпрдерд╛рд╡рдд рд░рд╣реЗрдВрдЧреА
- рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдкрд╛рд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рд╣реИрдВ (рдореМрдЬреВрджрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП, рд╡реЗ рдИрдореЗрд▓ рдкрддреЗ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЙрддреНрдкрдиреНрди рд╣реЛрдВрдЧреЗ)
- рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдкрдиреЗ рдирд╛рдорд╕реНрдерд╛рди рдореЗрдВ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдмрдирд╛рддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП- randx / my-project)
- рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдкрдирд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдмрджрд▓ рд╕рдХрддрд╛ рд╣реИред рдЙрдирдХреА рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдЙрд╕реА рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдкреБрдирд░реНрдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
- рд╕рдореВрд╣ рдХрд╛ рдПрдХ рд╕реНрд╡рд╛рдореА рд╣реЛрддрд╛ рд╣реИ
- рдорд╛рд▓рд┐рдХ рд╕рдореВрд╣ рдХреЗ рднреАрддрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИ
- рдорд╛рд▓рд┐рдХ рдХреА рд╕рдореВрд╣ рдХреЗ рднреАрддрд░ рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рддрдХ рдкрд╣реБрдВрдЪ рд╣реИред
- рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдПрдХ рдирд╛рдо рд╕реНрдерд╛рди (рд╕рдореВрд╣, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛, рд╡реИрд╢реНрд╡рд┐рдХ) рд╕реЗ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рджреВрд╕рд░реЗ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ
- рд╕рдореВрд╣ рдпрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ - рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдирд╛рдо рд╕реНрдерд╛рдиред Namespace Owner - рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдУрдирд░
рдЕрдиреНрдп рдкрд░рд┐рд╡рд░реНрддрди
- рдмреЗрд╣рддрд░ PostgreSQL рд╕рдорд░реНрдерди
- рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдИрдореЗрд▓
- рдЗрд╢реНрдпреВ рдЦреЛрд▓рдиреЗ / рдмрдВрдж рдХрд░рдиреЗ рдкрд░ рдИрдореЗрд▓ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди рддрдп
- рдкреБрдирд░реНрдЧрдард┐рдд рд╕реЗрдЯрд┐рдВрдЧреНрд╕
- рдХрдорд┐рдЯреНрд╕ рдХреА рдирд┐рд╢реНрдЪрд┐рдд рддреБрд▓рдирд╛
- рдЕрджреНрдпрддрд┐рдд рдЗрдВрдЯрд░рдлрд╝реЗрд╕, рдЕрдм рдЖрдк рдПрдХ рдкреИрдЪ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЕрдиреБрд░реЛрдз рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЕрдиреБрд░реЛрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
- рдореАрд▓ рдХреЗ рдкрддреНрдерд░ рдЕрдм рдмрдВрдж рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдЬрдм рддрдХ рдЖрдк рдЗрд╕реЗ рдмрдВрдж рдирд╣реАрдВ рдХрд░рддреЗ рддрдм рддрдХ рдорд╛рдЗрд▓рд╕реНрдЯреЛрди рдЦреБрд▓рд╛ рд░рд╣рддрд╛ рд╣реИред
- рдирдИ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ рдбреЗрд╕рдмреЛрд░реНрдб рдкрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИрдВ
- рдЯреАрдо рдХреЗ рд╕рджрд╕реНрдпреЛрдВ рдХреЛ рд╕рдореВрд╣ # рд▓реЛрдЧреЛрдВ рдХреЗ рдкреЗрдЬ рдкрд░ рдЬрд▓реНрджреА рд╕реЗ рдЬреЛрдбрд╝реЗрдВ
- рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдореЗрдВ рд╡реГрджреНрдзрд┐
- рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ, рдкреНрд░реЛрдЬреЗрдХреНрдЯ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдФрд░ рд╕рдореВрд╣ рд╡рд░реНрдгрд╛рдиреБрдХреНрд░рдо рдореЗрдВ рдХреНрд░рдордмрджреНрдз рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред
- рдбреЗрд╕рдмреЛрд░реНрдб рдкрд░ рдмреЗрд╣рддрд░ рдЗрд╢реНрдпреВ рдореИрдиреЗрдЬрдореЗрдВрдЯ рдкреЗрдЬ
- GitLab CI рдХреЗ рд╕рд╛рде рдмреЗрд╣рддрд░ рдПрдХреАрдХрд░рдг (GitLab CI v1.1.1 рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ)
4.0 рдореЗрдВ рдХреНрдпрд╛ рдирд┐рдХрд╛рд▓рд╛ рдЧрдпрд╛ рдерд╛:
- рдЧрд┐рдЯреЛрд▓рд┐рдЯ 2 рд╕рдорд░реНрдерди
- SQLite рд╕рдорд░реНрдерди (рдмреЗрд╢рдХ, рдпрд╣ рдПрдХ рдЕрдЪреНрдЫреА рдмрд╛рдд рд╣реИ, рд▓реЗрдХрд┐рди рдЬрдм рдХрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдХ рд╕рд╛рде рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рдбреЗрдЯрд╛рдмреЗрд╕ рдЕрд╡рд░реБрджреНрдз рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ)
- API v2 рд╕рдорд░реНрдерди (рдирд╛рдо рд╕реНрдерд╛рди рдХреЗ рд╕рд╛рде рдЕрд╕рдВрдЧрддрд┐ рдХреЗ рдХрд╛рд░рдг)
рдЗрд╕ рдХрджрдо рдХреЗ рджреМрд░рд╛рди рдХреНрдпрд╛ рдЕрдкрдбреЗрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:
- Gitlab.yml рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ
- рдЧрд┐рдЯреЛрд▓рд┐рдЯ рд╣реБрдХ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ
- / рд╣реЛрдо / рдЧрд┐рдЯ / рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА / рдХреЗ рд▓рд┐рдП рдЕрдиреБрдорддрд┐рдпрд╛рдВ
- рд╕рд╛рдЗрдорд▓рд┐рдВрдХ python2
рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ
Deshbord

рдорд░реНрдЬ рдХрд░рдиреЗ рдХрд╛ рдЕрдиреБрд░реЛрдз

рдлрд╝рд╛рдЗрд▓ рдмреНрд░рд╛рдЙрдЬрд╝рд┐рдВрдЧ

рдореБрджреНрджреЗ

рдХреИрд╕реЗ gitolite рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
рдХреИрд╕реЗ sqlite рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
Gitlab v4.0.0 рдХреИрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ
GitLab рдХреЛ v4.0.0 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХреИрд╕реЗ рдХрд░реЗрдВ
GitLab рд╕рддрдд рдПрдХреАрдХрд░рдг рд╕рд░реНрд╡рд░
рдореБрдЦреНрдп рдмрд┐рдВрджреБ
- GitLab CI рд░реВрдмреА рдкрд░ рд░реЗрд▓ + рд░реЗрд╕рдХреНрдпреВ / рд░реЗрдбрд┐рд╕ рдкрд░ рдЪрд▓рддрд╛ рд╣реИ
- GitLab CI рдХреЗрд╡рд▓ git рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ
- рдСрдЯреЛ рдмрд┐рд▓реНрдб рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ GitLab рдЙрджрд╛рд╣рд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ
рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ
- рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдЖрдкрдХреЛ VPS рдпрд╛ рдХрд┐рд╕реА рднреА linux рд╕рд░реНрд╡рд░ рдкрд░ GitLab CI рдХреЛ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛

- рдлрд┐рд░ рдЖрдкрдХреЛ рдЙрди рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдХреНрд▓реЛрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬреЛ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗ рдФрд░ рдПрдХ рдкрд░реАрдХреНрд╖рдг рд╡рд╛рддрд╛рд╡рд░рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВрдЧреЗ
- рдЕрдЧрд▓рд╛ рдХрджрдо рдмрд╕ рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ GitLab CI рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рд╣реИ

- GitLab CI рджреНрд╡рд╛рд░рд╛ рджрд┐рдП рдЧрдП HTTP POST url рдХреЛ GitLab webhooks рдореЗрдВ рдХреЙрдкреА рдХрд░рдирд╛ рд╣реА рд╢реЗрд╖ рд░рд╣ рдЧрдпрд╛ рд╣реИ

- рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдкрд░ рдзрдХреЗрд▓рдиреЗ рдкрд░, рдПрдХ рд╣реБрдХ рдХрд╛рдо рдХрд░реЗрдЧрд╛, рдЬреЛ CI рдХреЛ рдирд┐рд░реНрдорд╛рдг рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░реЗрдЧрд╛
рдореИрдВ рдЦреБрдж рд╕реЗ рдпрд╣ рдЬреЛрдбрд╝реВрдВрдЧрд╛ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИрдВред рдпрд╛рдж рдирд╣реАрдВред
- рдЧрд┐рдЯрд╣рдм рдкрд░ рдЧрд┐рддрд▓рдм
- GitHub рдкрд░ GitLab CI
- GitLab.org