рдлреЗрд╕рдмреБрдХрд▓реЗ рдирдпрд╛рдБ рд╕реНрд░реЛрдд рдирд┐рдпрдиреНрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реА рдмрд┐рд░реБрд╡рд╛ рдЕрдирд╛рд╡рд░рдг рдЧрд░реЗрдХреЛ рдЫ

рдлреЗрд╕рдмреБрдХ (рд░реВрд╕реА рд╕рдВрдШрдорд╛ рдкреНрд░рддрд┐рдмрдиреНрдзрд┐рдд) рд▓реЗ рдмрд┐рд░реБрд╡рд╛ рд╕реНрд░реЛрдд рдирд┐рдпрдиреНрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реА рдкреНрд░рдХрд╛рд╢рд┐рдд рдЧрд░реНтАНрдпреЛ, рдЖрдиреНрддрд░рд┐рдХ рдХрдореНрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВрдХреЛ рд╡рд┐рдХрд╛рд╕рдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫред рдкреНрд░рдгрд╛рд▓реАрд▓реЗ рдПрдХ рдкрд░рд┐рдЪрд┐рдд рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдиреНрддреНрд░рдг рдЗрдиреНрдЯрд░рдлреЗрд╕ рдкреНрд░рджрд╛рди рдЧрд░реНрдиреЗ рд▓рдХреНрд╖реНрдп рд░рд╛рдЦреЗрдХреЛ рдЫ рдЬрд╕рд▓реЗ рд▓рд╛рдЦреМрдВ рдлрд╛рдЗрд▓рд╣рд░реВ, рдХрдорд┐рдЯрд╣рд░реВ рд░ рд╢рд╛рдЦрд╛рд╣рд░реВ рдлреИрд▓рд┐рдПрдХреЛ рдзреЗрд░реИ рдареВрд▓рд╛ рднрдгреНрдбрд╛рд░рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдорд╛рдкрди рдЧрд░реНрди рд╕рдХреНрдЫред рдХреНрд▓рд╛рдЗрдиреНрдЯ рдХреЛрдб Python рд░ Rust рдорд╛ рд▓реЗрдЦрд┐рдПрдХреЛ рдЫ, рд░ GPLv2 рд▓рд╛рдЗрд╕реЗрдиреНрд╕ рдЕрдиреНрддрд░реНрдЧрдд рдЦреБрд▓рд╛ рдЫред

рдПрдХ рд╕рд░реНрднрд░ рдкрд╛рд░реНрдЯ рд░рд┐рдкреЛрдЬрд┐рдЯрд░реАрд╣рд░реБ рд╕рдВрдЧ рдХреБрд╢рд▓ рд░рд┐рдореЛрдЯ рдХрд╛рдо рдХреЛ рд▓рд╛рдЧреА рдЕрд▓рдЧ рдЧрд░реА рд╡рд┐рдХрд╕рд┐рдд рдЧрд░рд┐рдПрдХреЛ рдЫ рд░ рдПрдХ рдкреВрд░реНрдг рднрдгреНрдбрд╛рд░ рдХреЛ рд░реВрдк рдорд╛ рднрдгреНрдбрд╛рд░ рдХреЛ рдПрдХ рднрд╛рдЧ рдХреЛ рдПрдХ рд╕реНрдерд╛рдиреАрдп рдЯреБрдХреНрд░рд╛ рд╕рдВрдЧ рдХрд╛рдо рдХреЛ рд▓рд╛рдЧреА рдПрдХ рднрд░реНрдЪреБрдЕрд▓ рдлрд╛рдЗрд▓ рдкреНрд░рдгрд╛рд▓реА рдХреЛ рд▓рд╛рдЧреА (рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд▓реЗ рд╕рдореНрдкреВрд░реНрдг рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рджреЗрдЦреНрдЫ, рддрд░ рдкрд╣реБрдБрдЪ рдЧрд░рд┐рдПрдХреЛ рдЖрд╡рд╢реНрдпрдХ рдбреЗрдЯрд╛ рдорд╛рддреНрд░ред рд╕реНрдерд╛рдиреАрдп рдкреНрд░рдгрд╛рд▓реАрдорд╛ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдЧрд░рд┐рдПрдХреЛ рдЫ)ред рдлреЗрд╕рдмреБрдХрдХреЛ рдкреВрд░реНрд╡рд╛рдзрд╛рд░рдорд╛ рдкреНрд░рдпреЛрдЧ рд╣реБрдиреЗ рдпреА рдХрдореНрдкреЛрдиреЗрдиреНрдЯрдХрд╛ рд▓рд╛рдЧрд┐ рдХреЛрдб рдЕрдЭреИ рдЦреБрд▓реЗрдХреЛ рдЫреИрди, рддрд░ рдХрдореНрдкрдиреАрд▓реЗ рднрд╡рд┐рд╖реНрдпрдорд╛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдЧрд░реНрдиреЗ рд╡рд╛рдЪрд╛ рдЧрд░реЗрдХреЛ рдЫред рдЬреЗ рд╣реЛрд╕реН, рд╣рд╛рд▓ Sapling рднрдгреНрдбрд╛рд░рдорд╛ рддрдкрд╛рдИрдВрд▓реЗ рдкрд╣рд┐рд▓реЗ рдиреИ Mononoke рд╕рд░реНрднрд░ (Rust рдорд╛) рд░ VFS EdenFS (C++ рдорд╛) рдХреЛ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдкрд╣рд░реВ рдлреЗрд▓рд╛ рдкрд╛рд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рдпреА рдХрдореНрдкреЛрдиреЗрдиреНрдЯрд╣рд░реВ рдРрдЪреНрдЫрд┐рдХ рдЫрдиреН рд░ Sapling рдХреНрд▓рд╛рдЗрдиреНрдЯ рдХрд╛рдо рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рдкрд░реНрдпрд╛рдкреНрдд рдЫ, рдЬрд╕рд▓реЗ Git рднрдгреНрдбрд╛рд░рд╣рд░реВ рдХреНрд▓реЛрди рдЧрд░реНрди, Git LFS рдорд╛ рдЖрдзрд╛рд░рд┐рдд рд╕рд░реНрднрд░рд╣рд░реВрд╕рдБрдЧ рдЕрдиреНрддрд░реНрдХреНрд░рд┐рдпрд╛ рдЧрд░реНрди рд░ GitHub рдЬрд╕реНрддрд╛ git рд╣реЛрд╕реНрдЯрд┐рдЩ рд╕рд╛рдЗрдЯрд╣рд░реВрд╕рдБрдЧ рдХрд╛рдо рдЧрд░реНрди рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫред

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

рдЕрдиреБрдХреВрд▓рди рдбреЗрдЯрд╛ рд▓реЛрдбрд┐рдЩрдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд, Sapling рд▓реЗ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВрдХреЛ рдЗрддрд┐рд╣рд╛рд╕рдХреЛ рд╕рд╛рде рдЬрд╛рдирдХрд╛рд░реАрдХреЛ рд▓реЛрдбрд┐рдЩ рдШрдЯрд╛рдЙрдиреЗ рдЙрджреНрджреЗрд╢реНрдпрд▓реЗ рдЕрдиреБрдХреВрд▓рдирд╣рд░реВ рдкрдирд┐ рд▓рд╛рдЧреВ рдЧрд░реНрджрдЫ (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдиреЗрд▓рдХреЛ рд╕рд╛рде рднрдгреНрдбрд╛рд░рдорд╛ рдбреЗрдЯрд╛рдХреЛ 3/4 рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВрдХреЛ рдЗрддрд┐рд╣рд╛рд╕ рд╣реЛ)ред рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВрдХреЛ рдЗрддрд┐рд╣рд╛рд╕рд╕рдБрдЧ рдкреНрд░рднрд╛рд╡рдХрд╛рд░реА рд░реВрдкрдорд╛ рдХрд╛рдо рдЧрд░реНрди, рдпрд╕рд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рдбрд╛рдЯрд╛рд▓рд╛рдИ рдЦрдгреНрдбрд┐рдд рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡рдорд╛ рднрдгреНрдбрд╛рд░ рдЧрд░рд┐рдПрдХреЛ рдЫ рдЬрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рд╕рд░реНрднрд░рдмрд╛рдЯ рдХрдорд┐рдЯ рдЧреНрд░рд╛рдлрдХреЛ рд╡реНрдпрдХреНрддрд┐рдЧрдд рднрд╛рдЧрд╣рд░реВ рдбрд╛рдЙрдирд▓реЛрдб рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рдЧреНрд░рд╛рд╣рдХрд▓реЗ рдзреЗрд░реИ рдХрдорд┐рдЯрд╣рд░реВ рдмреАрдЪрдХреЛ рд╕рдореНрдмрдиреНрдзрдХреЛ рдмрд╛рд░реЗрдорд╛ рд╕рд░реНрднрд░рдмрд╛рдЯ рдЬрд╛рдирдХрд╛рд░реА рдЕрдиреБрд░реЛрдз рдЧрд░реНрди рд╕рдХреНрдЫ рд░ рдЧреНрд░рд╛рдлрдХреЛ рдЖрд╡рд╢реНрдпрдХ рднрд╛рдЧ рдорд╛рддреНрд░ рдбрд╛рдЙрдирд▓реЛрдб рдЧрд░реНрди рд╕рдХреНрдЫред

рдпреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╡рд┐рдЧрдд резреж рд╡рд░реНрд╖рдорд╛ рд╡рд┐рдХрд╛рд╕ рднрдЗрд░рд╣реЗрдХреЛ рдЫ рд░ рдПрдЙрдЯрд╛ рдорд╛рд╕реНрдЯрд░ рд╢рд╛рдЦрд╛рдХреЛ рд╕рд╛рде рдзреЗрд░реИ рдареВрд▓рд╛ рдореЛрдиреЛрд▓рд┐рдерд┐рдХ рднрдгреНрдбрд╛рд░рд╣рд░реВрдорд╛ рдкрд╣реБрдБрдЪ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдЧрд░реНрджрд╛ рд╕рдорд╕реНрдпрд╛рд╣рд░реВ рд╕рдорд╛рдзрд╛рди рдЧрд░реНрди рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛ, рдЬрд╕рд▓реЗ "рдорд░реНрдЬ" рдХреЛ рд╕рдЯреНрдЯрд╛ "рд░рд┐рдмреЗрд╕" рдЕрдкрд░реЗрд╢рди рдкреНрд░рдпреЛрдЧ рдЧрд░реНтАНрдпреЛред рддреНрдпрд╕ рд╕рдордпрдорд╛, рддреНрдпрд╕реНрддрд╛ рд░рд┐рдкреЛрдЬрд┐рдЯрд░реАрд╣рд░реВрд╕рдБрдЧ рдХрд╛рдо рдЧрд░реНрдирдХрд╛ рд▓рд╛рдЧрд┐ рдХреБрдиреИ рдЦреБрд▓рд╛ рд╕рдорд╛рдзрд╛рдирд╣рд░реВ рдерд┐рдПрдирдиреН, рд░ рдлреЗрд╕рдмреБрдХ рдЗрдиреНрдЬрд┐рдирд┐рдпрд░рд╣рд░реВрд▓реЗ рдирдпрд╛рдБ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдиреНрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реА рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреЗ рдирд┐рд░реНрдгрдп рдЧрд░реЗ рдЬрд╕рд▓реЗ рдХрдореНрдкрдиреАрдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛рд╣рд░реВ рдкреВрд░рд╛ рдЧрд░реНрджрдЫ, рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВрд▓рд╛рдИ рд╕рд╛рдирд╛ рднрдгреНрдбрд╛рд░рд╣рд░реВрдорд╛ рд╡рд┐рднрд╛рдЬрди рдЧрд░реНрдиреБрдХреЛ рд╕рдЯреНрдЯрд╛, рдЬрд╕рд▓реЗ рдЬрдЯрд┐рд▓рддрд╛ рдирд┐рдореНрддреНрдпрд╛рдЙрдБрдЫред рдирд┐рд░реНрднрд░рддрд╛ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди (рдПрдХ рдкрдЯрдХ, рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛ рд╕рдорд╛рдзрд╛рди рдЧрд░реНрди, рдорд╛рдЗрдХреНрд░реЛрд╕рдлреНрдЯрд▓реЗ GVFS рддрд╣ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдпреЛ)ред рд╕реБрд░реБрдорд╛, рдлреЗрд╕рдмреБрдХрд▓реЗ рдорд░реНрдХреНрдпреВрд░рд┐рдпрд▓ рдкреНрд░рдгрд╛рд▓реА рдкреНрд░рдпреЛрдЧ рдЧрд░реНтАНрдпреЛ рд░ рдкрд╣рд┐рд▓реЛ рдЪрд░рдгрдорд╛ рд╕реЗрдкрд▓рд┐рдВрдЧ рдкрд░рд┐рдпреЛрдЬрдирд╛рд▓рд╛рдИ рдорд░реНрдХреБрд░рд┐рдпрд▓рдХреЛ рдЕрддрд┐рд░рд┐рдХреНрддрдХреЛ рд░реВрдкрдорд╛ рд╡рд┐рдХрд╕рд┐рдд рдЧрд░рд┐рдпреЛред рд╕рдордпрдХреЛ рд╕рд╛рде, рдкреНрд░рдгрд╛рд▓реА рдпрд╕рдХреЛ рдЖрдлреНрдиреИ рдкреНрд░реЛрдЯреЛрдХрд▓, рднрдгреНрдбрд╛рд░рдг рдврд╛рдБрдЪрд╛ рд░ рдПрд▓реНрдЧреЛрд░рд┐рджрдордХреЛ рд╕рд╛рде рдПрдХ рд╕реНрд╡рддрдиреНрддреНрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛рдорд╛ тАЛтАЛрдкрд░рд┐рдгрдд рднрдпреЛ, рдЬреБрди Git рднрдгреНрдбрд╛рд░рд╣рд░реВрд╕рдБрдЧ рдЕрдиреНрддрд░рдХреНрд░рд┐рдпрд╛ рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛рдХреЛ рд╕рд╛рде рд╡рд┐рд╕реНрддрд╛рд░ рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛред

рдХрд╛рдордХреЛ рд▓рд╛рдЧрд┐, рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЙрдкрдпреЛрдЧрд┐рддрд╛ "sl" рдкреНрд░рд╕реНрддрд╛рд╡ рдЧрд░рд┐рдПрдХреЛ рдЫ, рдЬрд╕рд▓реЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЕрд╡рдзрд╛рд░рдгрд╛рд╣рд░реВ, рдХрд╛рд░реНрдпрдкреНрд░рд╡рд╛рд╣рд╣рд░реВ рд░ Git рд░ Mercurial рд╕рдБрдЧ рдкрд░рд┐рдЪрд┐рдд рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВрд▓рд╛рдИ рдкрд░рд┐рдЪрд┐рдд рдЗрдиреНрдЯрд░рдлреЗрд╕ рд▓рд╛рдЧреВ рдЧрд░реНрджрдЫред Sapling рдорд╛ рд╢рдмреНрджрд╛рд╡рд▓реА рд░ рдЖрджреЗрд╢рд╣рд░реВ Git рднрдиреНрджрд╛ рдЕрд▓рд┐ рдлрд░рдХ рдЫрдиреН рд░ Mercurial рдХреЛ рдирдЬрд┐рдХ рдЫрдиреНред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рд╢рд╛рдЦрд╛рд╣рд░реВрдХреЛ рд╕рдЯреНрдЯрд╛, "рдмреБрдХрдорд╛рд░реНрдХрд╣рд░реВ" рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫ (рдирд╛рдо рдЧрд░рд┐рдПрдХрд╛ рд╢рд╛рдЦрд╛рд╣рд░реВ рд╕рдорд░реНрдерд┐рдд рдЫреИрдирдиреН), рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд░реВрдкрдорд╛, рдХреНрд▓реЛрди/рдкреБрд▓ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧрд░реНрджрд╛, рд╕рдореНрдкреВрд░реНрдг рднрдгреНрдбрд╛рд░ рд▓реЛрдб рд╣реБрдБрджреИрди, рддрд░ рдореБрдЦреНрдп рд╢рд╛рдЦрд╛ рдорд╛рддреНрд░, рддреНрдпрд╣рд╛рдБ рдХрдорд┐рдЯрд╣рд░реВрдХреЛ рдХреБрдиреИ рдкреНрд░рд╛рд░рдореНрднрд┐рдХ рдЪрд┐рдиреНрд╣ рдЫреИрди ( рд╕реНрдЯреЗрдЬрд┐рдЩ рдПрд░рд┐рдпрд╛), "git fetch" рдХреЛ рд╕рдЯреНрдЯрд╛ "sl" рдХрдорд╛рдгреНрдб рдкреБрд▓ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫ, "git pull" - "sl pull-rebase" рдХреЛ рд╕рдЯреНрдЯрд╛, "git checkout COMMIT" - "sl goto COMMIT" рдХреЛ рд╕рдЯреНрдЯрд╛ред "git reflog" - "sl journal", "git checkout - FILE" рдХреЛ рд╕рдЯреНрдЯрд╛ рдкрд░рд┐рд╡рд░реНрддрди рд░рджреНрдж рдЧрд░реНрди "sl revert FILE" рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░рд┐рдПрдХреЛ рдЫ, рд░ "." рд▓рд╛рдИ "HEAD" рд╢рд╛рдЦрд╛ рдкрд╣рд┐рдЪрд╛рди рдЧрд░реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫред рддрд░ рд╕рд╛рдорд╛рдиреНрдпрддрдпрд╛, рд╢рд╛рдЦрд╛рд╣рд░реВ рд░ рдХреНрд▓реЛрди/рдкреБрд▓/рдкреБрд╢/рдХрдорд┐рдЯ/рд░рд┐рдмреЗрд╕ рдЕрдкрд░реЗрд╕рдирд╣рд░реВрдХреЛ рд╕рд╛рдорд╛рдиреНрдп рдЕрд╡рдзрд╛рд░рдгрд╛рд╣рд░реВ рд╕рдВрд░рдХреНрд╖рд┐рдд рдЫрдиреНред

Sapling Toolkit рдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рдордзреНрдпреЗ, "smartlog" рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдмрд╛рд╣рд┐рд░ рдЦрдбрд╛ рдЫ, рдЬрд╕рд▓реЗ рддрдкрд╛рдЗрдБрд▓рд╛рдИ рддрдкрд╛рдЗрдБрдХреЛ рднрдгреНрдбрд╛рд░рдХреЛ рдЕрд╡рд╕реНрдерд╛ рджреГрд╢реНрдпрд╛рддреНрдордХ рд░реВрдкрдорд╛ рдореВрд▓реНрдпрд╛рдЩреНрдХрди рдЧрд░реНрди, рд╕рдмреИрднрдиреНрджрд╛ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдЬрд╛рдирдХрд╛рд░реА рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдЧрд░реНрди рд░ рдорд╣рддреНрд╡рд╣реАрди рд╡рд┐рд╡рд░рдгрд╣рд░реВ рдлрд┐рд▓реНрдЯрд░ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдЬрдм рддрдкрд╛рдЗрдБ рддрд░реНрдХрд╣рд░реВ рдмрд┐рдирд╛ sl рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдЪрд▓рд╛рдЙрдиреБрд╣реБрдиреНрдЫ, рдХреЗрд╡рд▓ рддрдкрд╛рдЗрдБрдХреЛ рдЖрдлреНрдиреИ рд╕реНрдерд╛рдиреАрдп рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рд╕реНрдХреНрд░рд┐рдирдорд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реБрдиреНрдЫрдиреН (рдЕрд░реВрд▓рд╛рдИ рдиреНрдпреВрдирддрдо рдЧрд░рд┐рдПрдХреЛ рдЫ), рдмрд╛рд╣реНрдп рд╢рд╛рдЦрд╛рд╣рд░реВрдХреЛ рд╕реНрдерд┐рддрд┐, рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░рд┐рдПрдХрд╛ рдлрд╛рдЗрд▓рд╣рд░реВ рд░ рдХрдорд┐рдЯрд╣рд░реВрдХреЛ рдирдпрд╛рдБ рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВ рджреЗрдЦрд╛рдЗрдиреНрдЫред рдердк рд░реВрдкрдорд╛, рдПрдХ рдЕрдиреНрддрд░рдХреНрд░рд┐рдпрд╛рддреНрдордХ рд╡реЗрдм рдЗрдиреНрдЯрд░рдлреЗрд╕ рдкреНрд░рд╕реНрддрд╛рд╡ рдЧрд░рд┐рдПрдХреЛ рдЫ, рдЬрд╕рд▓реЗ рд╕реНрдорд╛рд░реНрдЯ рд▓рдЧ, рдкрд░рд┐рд╡рд░реНрддрди рд░реВрдЦ рд░ рдХрдорд┐рдЯрд╣рд░реВ рдорд╛рд░реНрдлрдд рджреНрд░реБрдд рд░реВрдкрдорд╛ рдиреЗрднрд┐рдЧреЗрдЯ рдЧрд░реНрди рд╕рдореНрднрд╡ рдмрдирд╛рдЙрдБрдЫред

рдлреЗрд╕рдмреБрдХрд▓реЗ рдирдпрд╛рдБ рд╕реНрд░реЛрдд рдирд┐рдпрдиреНрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реА рдмрд┐рд░реБрд╡рд╛ рдЕрдирд╛рд╡рд░рдг рдЧрд░реЗрдХреЛ рдЫ

рдмрд┐рд░реБрд╡рд╛рдорд╛ рдЕрд░реНрдХреЛ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд╕реБрдзрд╛рд░ рдпреЛ рд╣реЛ рдХрд┐ рдпрд╕рд▓реЗ рддреНрд░реБрдЯрд┐рд╣рд░реВ рдареАрдХ рдЧрд░реНрди рд░ рд╕рдорд╛рдзрд╛рди рдЧрд░реНрди рд░ рдЕрдШрд┐рд▓реНрд▓реЛ рдЕрд╡рд╕реНрдерд╛рдорд╛ рдлрд░реНрдХрд╛рдЙрди рд╕рдЬрд┐рд▓реЛ рдмрдирд╛рдЙрдБрдЫред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдЖрджреЗрд╢рд╣рд░реВ "sl undo", "sl redo", "sl uncommit" рд░ "sl unamend" рдзреЗрд░реИ рдХрд╛рд░реНрдпрд╣рд░реВ рд░реЛрд▓ рдмреНрдпрд╛рдХ рдЧрд░реНрди рдкреНрд░рд╕реНрддрд╛рд╡ рдЧрд░рд┐рдиреНрдЫ; рдЖрджреЗрд╢рд╣рд░реВ "sl hide" рд░ "sl unhide" рдЕрд╕реНрдерд╛рдпреА рд░реВрдкрдорд╛ рдХрдорд┐рдЯрд╣рд░реВ рд▓реБрдХрд╛рдЙрди рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫ; рд░ рдкреБрд░рд╛рдиреЛ рдЕрд╡рд╕реНрдерд╛рд╣рд░реВ рдорд╛рд░реНрдлрдд рдЕрдиреНрддрд░рдХреНрд░рд┐рдпрд╛рддреНрдордХ рдиреЗрднрд┐рдЧреЗрд╕рдирдХреЛ рд▓рд╛рдЧрд┐ рд░ "sl undo -i рдЖрджреЗрд╢" рдЖрджреЗрд╢рдХреЛ рд╕рд╛рде рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдмрд┐рдиреНрджреБрдорд╛ рдлрд░реНрдХрдиреБрд╣реЛрд╕реНред рдмрд┐рд░реБрд╡рд╛рд▓реЗ рдХрдорд┐рдЯ рд╕реНрдЯреНрдпрд╛рдХрдХреЛ рдЕрд╡рдзрд╛рд░рдгрд╛рд▓рд╛рдИ рдкрдирд┐ рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫ, рдЬрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдЬрдЯрд┐рд▓ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛рд▓рд╛рдИ рд╕рд╛рдиреЛ, рдердк рдмреБрдЭреНрди рд╕рдХрд┐рдиреЗ рд╡реГрджреНрдзрд┐рд╢реАрд▓ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ (рдЖрдзрд╛рд░рднреВрдд рдврд╛рдБрдЪрд╛рдмрд╛рдЯ рд╕рдорд╛рдкреНрдд рдХрд╛рд░реНрдпрдорд╛) рдХреЛ рд╕реЗрдЯрдорд╛ рддреЛрдбреЗрд░ рдЪрд░рдг-рджрд░-рдЪрд░рдг рд╕рдореАрдХреНрд╖рд╛рд╣рд░реВ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред

рдмрд┐рд░реБрд╡рд╛рдХрд╛ рд▓рд╛рдЧрд┐ рдзреЗрд░реИ рдердкрд╣рд░реВ рддрдпрд╛рд░ рдЧрд░рд┐рдПрдХреЛ рдЫ, рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рд╕рдореАрдХреНрд╖рд╛ рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рд╕рдореАрдХреНрд╖рд╛ рд╕реНрдЯреНрдпрд╛рдХ рдЗрдиреНрдЯрд░рдлреЗрд╕ рд╕рд╣рд┐рдд (GPLv2 рдЕрдиреНрддрд░реНрдЧрдд рдХреЛрдб), рдЬрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ GitHub рдорд╛ рдкреБрд▓ рдЕрдиреБрд░реЛрдзрд╣рд░реВ рдкреНрд░рд╢реЛрдзрди рдЧрд░реНрди рд░ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВрдХреЛ рд╕реНрдЯреНрдпрд╛рдХ рджреГрд╢реНрдп рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рдердк рд░реВрдкрдорд╛, VSCode рд░ TextMate рд╕рдореНрдкрд╛рджрдХрд╣рд░реВ, рд╕рд╛рдереИ ISL (Interactive SmartLog) рдЗрдиреНрдЯрд░рдлреЗрд╕ рд░ рд╕рд░реНрднрд░рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдХреЛ рд▓рд╛рдЧрд┐ рдердкрд╣рд░реВ рдкреНрд░рдХрд╛рд╢рд┐рдд рдЧрд░рд┐рдПрдХреЛ рдЫред

рд╕реНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди