Dendrite 0.1.0 рдХреЛ рд░рд┐рд▓реАрдЬ, рдореНрдпрд╛рдЯреНрд░рд┐рдХреНрд╕ рдкреНрд░реЛрдЯреЛрдХрд▓ рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕рдВрдЧ рдПрдХ рд╕рдВрдЪрд╛рд░ рд╕рд░реНрднрд░

рдкреНрд░рдХрд╛рд╢рд┐рдд рдореНрдпрд╛рдЯреНрд░рд┐рдХреНрд╕ рд╕рд░реНрднрд░ рд░рд┐рд▓реАрдЬ рдбреЗрдиреНрдбреНрд░рд╛рдЗрдЯ реж.рез.реж, рдЬрд╕рд▓реЗ рдмрд┐рдЯрд╛ рдкрд░реАрдХреНрд╖рдг рдЪрд░рдгрдорд╛ рд╡рд┐рдХрд╛рд╕рдХреЛ рд╕рдВрдХреНрд░рдордгрд▓рд╛рдИ рдЪрд┐рдиреНрд╣рд┐рдд рдЧрд░реНрдпреЛред рдбреЗрдиреНрдбреНрд░рд╛рдЗрдЯ рд╡рд┐рдХреЗрдиреНрджреНрд░реАрдХреГрдд рд╕рдЮреНрдЪрд╛рд░ рдкреНрд▓реЗрдЯрдлрд░реНрдо рдореНрдпрд╛рдЯреНрд░рд┐рдХреНрд╕рдХрд╛ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВрдХреЛ рдХреЛрд░ рдЯреЛрд▓реАрджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рдЧрд░рд┐рдПрдХреЛ рдЫ рд░ рдореНрдпрд╛рдЯреНрд░рд┐рдХреНрд╕ рд╕рд░реНрднрд░ рдХрдореНрдкреЛрдиреЗрдиреНрдЯрд╣рд░реВрдХреЛ рджреЛрд╕реНрд░реЛ рдкреБрд╕реНрддрд╛рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдХреЛ рд░реВрдкрдорд╛ рд░рд╛рдЦрд┐рдПрдХреЛ рдЫред рд╕рдиреНрджрд░реНрдн рд╕рд░реНрднрд░ рд╡рд┐рдкрд░реАрдд Synapse, рдкрд╛рдЗрдердирдорд╛ рд▓реЗрдЦрд┐рдПрдХреЛ, рдХреЛрдб рдбреЗрдиреНрдбреНрд░рд╛рдЗрдЯ рд╡рд┐рдХрд╛рд╕ рдЧрд░реНрджреИрдЫ рдЧреЛ рднрд╛рд╖рд╛рдорд╛ред рджреБрдмреИ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирд╣рд░реВ Apache 2.0 рд▓рд╛рдЗрд╕реЗрдиреНрд╕ рдЕрдиреНрддрд░реНрдЧрдд рдЗрдЬрд╛рдЬрддрдкрддреНрд░ рдкреНрд░рд╛рдкреНрдд рдЫрдиреНред рдкрд░рд┐рдпреЛрдЬрдирд╛рдХреЛ рд╕реАрдорд╛рдирд╛рдорд╛ рд░реБрдорд╛ рд░рд╕реНрдЯ рднрд╛рд╖рд╛рдорд╛ рдореНрдпрд╛рдЯреНрд░рд┐рдХреНрд╕ рд╕рд░реНрднрд░рдХреЛ рд╕рдВрд╕реНрдХрд░рдг рдЫреБрдЯреНрдЯреИ рд╡рд┐рдХрд╕рд┐рдд рднрдЗрд░рд╣реЗрдХреЛ рдЫ, рдЬреБрди рджреНрд╡рд╛рд░рд╛ рд╡рд┐рддрд░рд┐рдд MIT рд▓рд╛рдЗрд╕реЗрдиреНрд╕ рдЕрдиреНрддрд░реНрдЧрддред

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

Dendrite 0.1.0 рдХреЛ рд░рд┐рд▓реАрдЬ, рдореНрдпрд╛рдЯреНрд░рд┐рдХреНрд╕ рдкреНрд░реЛрдЯреЛрдХрд▓ рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕рдВрдЧ рдПрдХ рд╕рдВрдЪрд╛рд░ рд╕рд░реНрднрд░

рдбреЗрдиреНрдбреНрд░рд╛рдЗрдЯрд▓реЗ рджреБрдИ рдореЛрдбрд╣рд░реВрд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫ: рдореЛрдиреЛрд▓рд┐рдерд┐рдХ рд░ рдкреЛрд▓рд┐рд▓рд┐рдеред рдореЛрдиреЛрд▓рд┐рдерд┐рдХ рдореЛрдбрдорд╛, рд╕рдмреИ рдорд╛рдЗрдХреНрд░реЛрд╕реЗрд╡рд╛рд╣рд░реВ рдПрдХрд▓ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдпреЛрдЧреНрдп рдлрд╛рдЗрд▓рдорд╛ рдкреНрдпрд╛рдХреЗрдЬ рд╣реБрдиреНрдЫрдиреН, рдПрдХрд▓ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдорд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реБрдиреНрдЫрдиреН, рд░ рдПрдХрдЕрд░реНрдХрд╛рд╕рдБрдЧ рд╕реАрдзрд╛ рдЕрдиреНрддрд░рдХреНрд░рд┐рдпрд╛ рд╣реБрдиреНрдЫрдиреНред рдмрд╣реБ-рдХрдореНрдкреЛрдиреЗрдиреНрдЯ (рдХреНрд▓рд╕реНрдЯрд░) рдореЛрдбрдорд╛, рд╡рд┐рднрд┐рдиреНрди рдиреЛрдбрд╣рд░реВрдорд╛ рд╡рд┐рддрд░рд┐рдд рд╕рд╣рд┐рдд, рдорд╛рдЗрдХреНрд░реЛ рд╕реЗрд╡рд╛рд╣рд░реВ рдЕрд▓рдЧ рд░реВрдкрдорд╛ рд╕реБрд░реБ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред рдорд╛ рдШрдЯрдХ рдХреЛ рдЕрдиреНрддрд░рдХреНрд░рд┐рдпрд╛
рдмрд╣реБ-рдХрдореНрдкреЛрдиреЗрдиреНрдЯ рдореЛрдб рдЖрдиреНрддрд░рд┐рдХ HTTP API рд░ рдкреНрд▓реЗрдЯрдлрд░реНрдо рдкреНрд░рдпреЛрдЧ рдЧрд░реА рдЧрд░рд┐рдиреНрдЫ рдЕрдкрд╛рдЪреЗ рдХрд╛рдлреНрдХрд╛.

рд╡рд┐рдХрд╛рд╕ рдореНрдпрд╛рдЯреНрд░рд┐рдХреНрд╕ рдкреНрд░реЛрдЯреЛрдХрд▓ рд╡рд┐рдирд┐рд░реНрджреЗрд╢рд╣рд░реВрдорд╛ рдЖрдзрд╛рд░рд┐рдд рд░ рджреБрдИ рдкрд░реАрдХреНрд╖рдг рд╕реБрдЗрдЯрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реА рдЧрд░рд┐рдиреНрдЫ - Synapse рдорд╛ рд╕рд╛рдорд╛рдиреНрдп рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ systest рд░ рдирдпрд╛рдБ рд╕реЗрдЯ рдкреВрд░рдХред рд╡рд┐рдХрд╛рд╕рдХреЛ рд╣рд╛рд▓рдХреЛ рдЪрд░рдгрдорд╛, рдбреЗрдиреНрдбреНрд░рд╛рдЗрдЯрд▓реЗ рдХреНрд▓рд╛рдЗрдиреНрдЯ-рд╕рд░реНрднрд░ API рдкрд░реАрдХреНрд╖рдгрд╣рд░реВрдХреЛ 56% рд░ рдлреЗрдбрд░реЗрд╢рди API рдкрд░реАрдХреНрд╖рдгрд╣рд░реВрдХреЛ 77% рдкрд╛рд╕ рдЧрд░реНрджрдЫ, рдЬрдмрдХрд┐ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрднрд░реЗрдЬ рдЧреНрд░рд╛рд╣рдХ-рд╕рд░реНрднрд░ API рдХреЛ рд▓рд╛рдЧрд┐ 70% рд░ рдлреЗрдбрд░реЗрд╢рди API рдХреЛ рд▓рд╛рдЧрд┐ 95% рдЕрдиреБрдорд╛рди рдЧрд░рд┐рдПрдХреЛ рдЫред

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

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

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

рд╣рд╛рдореА рдпрд╛рдж рдЧрд░реМрдВ рдХрд┐ рд╡рд┐рдХреЗрдиреНрджреНрд░реАрдХреГрдд рд╕рдВрдЪрд╛рд░ рдореНрдпрд╛рдЯреНрд░рд┐рдХреНрд╕ рд╕рдВрдЧрдард┐рдд рдЧрд░реНрди рдХреЛ рд▓рд╛рдЧреА рдкреНрд▓реЗрдЯрдлрд░реНрдо HTTPS + JSON рдХреЛ рдПрдХ рдпрд╛рддрд╛рдпрд╛рдд рдХреЛ рд░реВрдк рдорд╛ WebSockets рд╡рд╛ рдкреНрд░реЛрдЯреЛрдХрд▓ рдХреЛ рдЖрдзрд╛рд░ рдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдХреЛ рд▓рд╛рдЧреА рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрдЫред CoAP+рд╣рд▓реНрд▓рд╛ред рдкреНрд░рдгрд╛рд▓реА рд╕рд░реНрднрд░рд╣рд░реВрдХреЛ рд╕рдореБрджрд╛рдпрдХреЛ рд░реВрдкрдорд╛ рдЧрдарди рдЧрд░рд┐рдПрдХреЛ рдЫ рдЬреБрди рдПрдХ рдЕрд░реНрдХрд╛рд╕рдБрдЧ рдЕрдиреНрддрд░рдХреНрд░рд┐рдпрд╛ рдЧрд░реНрди рд╕рдХреНрдЫ рд░ рдПрдХ рд╕рд╛рдЭрд╛ рд╡рд┐рдХреЗрдиреНрджреНрд░реАрдХреГрдд рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рдПрдХрддрд╛рдмрджреНрдз рд╣реБрдиреНрдЫред рд╕рдиреНрджреЗрд╢рд╣рд░реВ рд╕рдмреИ рд╕рд░реНрднрд░рд╣рд░реВрдорд╛ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдЧрд░рд┐рдПрдХрд╛ рдЫрдиреН рдЬрд╕рдорд╛ рд╕рдиреНрджреЗрд╢ рд╕рд╣рднрд╛рдЧреАрд╣рд░реВ рдЬрдбрд╛рди рднрдПрдХрд╛ рдЫрдиреНред рд╕рдиреНрджреЗрд╢рд╣рд░реВ рд╕рд░реНрднрд░рд╣рд░реВрдорд╛ рдкреНрд░рдЪрд╛рд░ рдЧрд░рд┐рдиреНрдЫ рдЬрд╕рд░реА рдХрдорд┐рдЯрд╣рд░реВ Git рднрдгреНрдбрд╛рд░рд╣рд░реВ рдмреАрдЪ рдкреНрд░рдЪрд╛рд░ рдЧрд░рд┐рдиреНрдЫред рдЕрд╕реНрдерд╛рдпреА рд╕рд░реНрднрд░ рдЖрдЙрдЯреЗрдЬрдХреЛ рдШрдЯрдирд╛рдорд╛, рд╕рдиреНрджреЗрд╢рд╣рд░реВ рд╣рд░рд╛рдЙрдБрджреИрдирдиреН, рддрд░ рд╕рд░реНрднрд░рд▓реЗ рдкреБрдирдГ рд╕рдЮреНрдЪрд╛рд▓рди рдЧрд░реЗрдкрдЫрд┐ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓рд╛рдИ рдкрдард╛рдЗрдиреНрдЫред рдЗрдореЗрд▓, рдлреЛрди рдирдореНрдмрд░, рдлреЗрд╕рдмреБрдХ рдЦрд╛рддрд╛, рдЖрджрд┐ рд╕рд╣рд┐рдд рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рдЖрдИрдбреА рд╡рд┐рдХрд▓реНрдкрд╣рд░реВ рд╕рдорд░реНрдерд┐рдд рдЫрдиреНред

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

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

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