рдЕрдореЗрдЬрди S3 рдХреЗ рд╕рд╛рде Git рдФрд░ рдорд░реНрдХреНрдпреВрд░рд┐рдпрд▓ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░

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

рдЕрдХреНрд╕рд░, рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ред рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдпрд╣ рдХрд╛рд░рдг рдпрд╛ рдкрд░рд┐рдгрд╛рдо рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдЫреЛрдЯреА рдкрд╛рда рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдХрднреА-рдХрднреА рдХреБрдЫ рдЪрд┐рддреНрд░ рдпрд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдпред

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

рдЗрд╕рдХреЗ рдмрд╛рдж, рд╣рдо рджреЛрдиреЛрдВ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХрд╛ рд▓рд╛рдн рдЙрдард╛рдиреЗ рдФрд░ рдХрдорд┐рдпреЛрдВ рдХреА рднрд░рдкрд╛рдИ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдФрд░ рдЕрдореЗрдЬрд╝реЕрди рдПрд╕ 3 (рдХреНрд▓рд╛рдЙрдб рдлрд╝рд╛рдЗрд▓ рд╕реНрдЯреЛрд░реЗрдЬ) рдХреЛ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХреЛ рджреЗрдЦреЗрдВрдЧреЗред

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

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

рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд╕рд╛рде рдПрдХреАрдХрд░рдг рдХреЛ рддрдерд╛рдХрдерд┐рдд рд╣реБрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ - рдРрд╕реА рдШрдЯрдирд╛рдПрдВ рдЬреЛ рдЖрдк рдЕрдкрдиреЗ рд╣реИрдВрдбрд▓рд░ рдХреЛ рд╕реМрдВрдк рд╕рдХрддреЗ рд╣реИрдВред рд╣рдо рдЙрди рд▓реЛрдЧреЛрдВ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ рдЬреЛ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдиреЗ рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рднрдВрдбрд╛рд░ рдореЗрдВ рднреЗрдЬреЗ рдЬрд╛рдиреЗ рдкрд░ рд▓реЙрдиреНрдЪ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдорд░реНрдХреНрдпреВрд░рд┐рдпрд▓ рдореЗрдВ рдЖрд╡рдХ рдФрд░ рдЖрдЙрдЯрдЧреЛрдЗрдВрдЧ рдирд╛рдордХ рдЖрд╡рд╢реНрдпрдХ рд╣реБрдХ рд╣реЛрддреЗ рд╣реИрдВред рддрджрдиреБрд╕рд╛рд░, рдЖрдкрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдирд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдХрдорд╛рдВрдб рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдПрдХ рдХрд╛рд░реНрдпрд╢реАрд▓ рдлрд╝реЛрд▓реНрдбрд░ рд╕реЗ рдХреНрд▓рд╛рдЙрдб рдореЗрдВ рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдФрд░ рджреВрд╕рд░реА рд░рд┐рд╡рд░реНрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП - рдХреНрд▓рд╛рдЙрдб рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдЕрдкрдбреЗрдЯ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдирд╛ред

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

рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рдЗрдВрдЯреАрдЧреНрд░реЗрд╢рди


рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдлрд╝рд╛рдЗрд▓ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддреА рд╣реИ:

<?xml version="1.0" encoding="utf-8"?> <assets> <locations> <location>Content\Textures</location> <location>Content\Sounds</location> <location searchPattern="*.pdf">Docs</location> <location>Reference Libraries</location> </locations> <amazonS3> <accesskey>*****************</accesskey> <secretkey>****************************************</secretkey> <bucketname>mybucket</bucketname> </amazonS3> <files> <file path="Content\Textures\texture1.dds" checksum="BEF94D34F75D2190FF98746D3E73308B1A48ED241B857FFF8F9B642E7BB0322A"/> <file path="Content\Textures\texture1.psd" checksum="743391C2C73684AFE8CEB4A60B0317E634B6E54403E018385A85F048CC5925DE"/> <!--        --> </files> </assets> 

рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рддреАрди рдЦрдВрдб рд╣реИрдВ: рд╕реНрдерд╛рди, amazonS3 рдФрд░ рдлрд╝рд╛рдЗрд▓реЗрдВред рдкрд╣рд▓реЗ рджреЛ рдХреЛ рдмрд╣реБрдд рд╢реБрд░реБрдЖрдд рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЕрдВрддрд┐рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреНрд░реЛрдЧреНрд░рд╛рдо рджреНрд╡рд╛рд░рд╛ рд╕реНрд╡рдпрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд╕реНрдерд╛рди рд╡реЗ рдорд╛рд░реНрдЧ рд╣реИрдВ рдЬрд┐рдирдХреЗ рджреНрд╡рд╛рд░рд╛ рдЯреНрд░реИрдХрд┐рдВрдЧ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЦреЛрдЬрд╛ рдЬрд╛рдПрдЧрд╛ред рдпреЗ рдпрд╛ рддреЛ рдкреВрд░реНрдг рдкрде рдпрд╛ рдкрде рдЗрд╕ xml рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ рд╣реИрдВред рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реА рдХреА рдЕрдирджреЗрдЦреА рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рдорд╛рди рдкрде рдЬреЛрдбрд╝реЗ рдЬрд╛рдиреЗ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ рдпрд╣ рд╕реНрд╡рдпрдВ рдЙрдиреНрд╣реЗрдВ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рди рдХрд░реЗред

AmazonS3 рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЕрдиреБрдорд╛рди рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрд▓рд╛рдЙрдб рдлрд╝рд╛рдЗрд▓ рднрдВрдбрд╛рд░рдг рд╕реЗрдЯрд┐рдВрдЧреНрд╕ред рдкрд╣рд▓реА рджреЛ рдЪрд╛рдмрд┐рдпрд╛рдБ рдПрдХреНрд╕реЗрд╕ рдХреАрдЬрд╝ рд╣реИрдВ, рдЬреЛ рдХрд┐рд╕реА рднреА рдПрдбрдмреНрд▓реНрдпреВрдПрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдЙрддреНрдкрдиреНрди рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИрдВред рдЗрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рд░реВрдк рд╕реЗ рдЕрдореЗрдЬрд╝реЕрди рдПрдкреАрдЖрдИ рдЕрдиреБрд░реЛрдзреЛрдВ рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдмрдХреЗрдЯрдиреЗрдо рдмрд╛рд▓реНрдЯреА рдХрд╛ рдирд╛рдо рд╣реИ, рдЕрдореЗрдЬрд╝реЕрди рдПрд╕ 3 рдХреЗ рднреАрддрд░ рдПрдХ рдЗрдХрд╛рдИ рдЬрд┐рд╕рдореЗрдВ рдлрд╛рдЗрд▓реЗрдВ рдФрд░ рдлрд╝реЛрд▓реНрдбрд░реНрд╕ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдирд┐рдЧрд░рд╛рдиреА рдХреА рдЧрдИ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рднреА рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

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

рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд╕рд╛рде рдПрдХреАрдХрд░рдг


рдЕрдм рдЯреАрдореЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реНрд╡ред рдХрд╛рд░реНрдпрдХреНрд░рдо рддреАрди рдЖрджреЗрд╢реЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ: рдзрдХреНрдХрд╛, рдкреБрд▓ рдФрд░ рд╕реНрдерд┐рддрд┐ред рдкрд╣рд▓реЗ рджреЛ рд╕рдВрдЧрдд рд╣реБрдХ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИрдВред рд╕реНрдерд┐рддрд┐ рдореЙрдирд┐рдЯрд░ рдХреА рдЧрдИ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреА рд╣реИ рдФрд░ рдЗрд╕рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ hg рд╕реНрдерд┐рддрд┐ рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рд╕рдорд╛рди рд╣реИ - рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХреМрди рд╕реА рдлрд╛рдЗрд▓реЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдЬреЛрдбрд╝реА рдЧрдИ рд╣реИрдВ, рдмрджрд▓ рдЧрдИ рд╣реИрдВ, рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рд╣реЛ рдЧрдИ рд╣реИрдВ рдФрд░ рдХреМрди рд╕реА рдлрд╛рдЗрд▓реЗрдВ рд╡рд╣рд╛рдВ рдЧрд╛рдпрдм рд╣реИрдВред

рдкреБрд╢ рдХрдорд╛рдВрдб рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдореЗрдВ xml рдлрд╝рд╛рдЗрд▓, рдкрде рдФрд░ рд╣реИрд╢ рд╕реЗ рдореЙрдирд┐рдЯрд░ рдХреА рдЧрдИ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдорд┐рд▓рддреА рд╣реИред рдпрд╣ рднрдВрдбрд╛рд░ рдореЗрдВ рджрд░реНрдЬ рдЕрдВрддрд┐рдо рд░рд╛рдЬреНрдп рд╣реЛрдЧрд╛ред рдЗрд╕рдХреЗ рдмрд╛рдж, рдХрд╛рд░реНрдпрд╢реАрд▓ рдлрд╝реЛрд▓реНрдбрд░ рдХреА рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдПрдХрддреНрд░ рдХреА рдЬрд╛рддреА рд╣реИ - рд╕рднреА рдореЙрдирд┐рдЯрд░ рдХреА рдЧрдИ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдкрде рдФрд░ рд╣реИрд╢ред рдЗрд╕рдХреЗ рдмрд╛рдж рджреЛрдиреЛрдВ рд╕реВрдЪреА рдХреА рддреБрд▓рдирд╛ рд╣реИред

рдЪрд╛рд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпрд╛рдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ:

  1. рдХрд╛рд░реНрдпрд╢реАрд▓ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдПрдХ рдирдИ рдлрд╝рд╛рдЗрд▓ рд╣реИред рдпрд╣ рддрдм рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдХреЛрдИ рдореИрдЪ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рдпрд╛ рддреЛ рд░рд╛рд╕реНрддреЗ рд╕реЗ рдпрд╛ рд╣реИрд╢ рд╕реЗред рдирддреАрдЬрддрди, xml рдлрд╝рд╛рдЗрд▓ рдЕрдкрдбреЗрдЯ рдХреА рдЬрд╛рддреА рд╣реИ, рдирдИ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд░рд┐рдХреЙрд░реНрдб рдЗрд╕рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдлрд╝рд╛рдЗрд▓ рдЦреБрдж рд╣реА S3 рдореЗрдВ рдЕрдкрд▓реЛрдб рд╣реЛ рдЬрд╛рддреА рд╣реИред
  2. рдХрд╛рд░реНрдпрд╢реАрд▓ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕рдВрд╢реЛрдзрд┐рдд рдлрд╝рд╛рдЗрд▓ рд╣реИред рдРрд╕рд╛ рддрдм рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдкрде рдХреЗ рд╕рд╛рде рдПрдХ рдореИрдЪ рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЛрдИ рд╣реИрд╢ рдореИрдЪ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, xml рдлрд╝рд╛рдЗрд▓ рдЕрдкрдбреЗрдЯ рдХреА рдЬрд╛рддреА рд╣реИ, рд╕рдВрдмрдВрдзрд┐рдд рд░рд┐рдХреЙрд░реНрдб рдХрд╛ рд╣реИрд╢ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдПрдХ рдЕрджреНрдпрддрди рд╕рдВрд╕реНрдХрд░рдг S3 рдореЗрдВ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
  3. рдХрд╛рд░реНрдпрд╢реАрд▓ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдпрд╛ рдирд╛рдорд╛рдВрдХрд┐рдд рдлрд╝рд╛рдЗрд▓ рд╣реЛрддреА рд╣реИред рдРрд╕рд╛ рддрдм рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдХреЛрдИ рд╣реИрд╢ рдореИрдЪ рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд░рд╛рд╕реНрддреЗ рдореЗрдВ рдХреЛрдИ рдореИрдЪ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдирддреАрдЬрддрди, xml рдлрд╝рд╛рдЗрд▓ рдЕрдкрдбреЗрдЯ рдХреА рдЬрд╛рддреА рд╣реИ, рд╕рдВрдмрдВрдзрд┐рдд рд░рд┐рдХреЙрд░реНрдб рдХрд╛ рдкрде рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ S3 рдореЗрдВ рдХреБрдЫ рднреА рд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ S3 рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреА рдХреБрдВрдЬреА рд╣реИрд╢ рд╣реИ, рдФрд░ рдкрде рдХреА рдЬрд╛рдирдХрд╛рд░реА рдХреЗрд╡рд▓ xml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рджрд░реНрдЬ рдХреА рдЧрдИ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣реИрд╢ рдирд╣реАрдВ рдмрджрд▓рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП S3 рдореЗрдВ рдПрдХ рд╣реА рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкреБрдирдГ рд▓реЛрдб рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред
  4. рдЯреНрд░реИрдХ рдХреА рдЧрдИ рдлрд╝рд╛рдЗрд▓ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдлрд╝реЛрд▓реНрдбрд░ рд╕реЗ рд╣рдЯрд╛ рджреА рдЬрд╛рдПрдЧреАред рдпрд╣ рддрдм рд╣реЛрддрд╛ рд╣реИ рдЬрдм xml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдПрдХ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд╕реНрдерд╛рдиреАрдп рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рд╕реЗ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддреАред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдпрд╣ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ xml рдлрд╝рд╛рдЗрд▓ рд╕реЗ рд╣рдЯрд╛ рджреА рдЬрд╛рддреА рд╣реИред S3 рд╕реЗ рдХрднреА рднреА рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣рдЯрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХрд╛ рдореБрдЦреНрдп рдЙрджреНрджреЗрд╢реНрдп рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рднреА рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛ рд╣реИ рддрд╛рдХрд┐ рдЖрдк рдХрд┐рд╕реА рднреА рд╕рдВрд╢реЛрдзрди рдореЗрдВ рд╡рд╛рдкрд╕ рдЖ рд╕рдХреЗрдВред

рдкрд╛рдВрдЪрд╡реАрдВ рд╕рдВрднрд╛рд╡рд┐рдд рд╕реНрдерд┐рддрд┐ рд╣реИ - рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рддрдм рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдкрде рдФрд░ рд╣реИрд╢ рджреЛрдиреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдореИрдЪ рд╣реЛрддрд╛ рд╣реИред рдФрд░ рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдХреЛрдИ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдкреБрд▓ рдХрдорд╛рдВрдб рд╕реНрдерд╛рдиреАрдп рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕реВрдЪреА рдХреЗ рд╕рд╛рде xml рд╕реЗ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕реВрдЪреА рдХреА рддреБрд▓рдирд╛ рднреА рдХрд░рддрд╛ рд╣реИ рдФрд░ рдареАрдХ рдЙрд╕реА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдХреЗрд╡рд▓ рд╡рд┐рдкрд░реАрдд рджрд┐рд╢рд╛ рдореЗрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрдм xml рдореЗрдВ рдПрдХ рдирдИ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд╣реЛрддреА рд╣реИ, рдЕрд░реНрдерд╛рдд, рдкрде рдкрд░ рдпрд╛ рд╣реИрд╢ рдкрд░ рдХреЛрдИ рдореЗрд▓ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдлрд╝рд╛рдЗрд▓ S3 рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЬрд╛рддреА рд╣реИ рдФрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкрде рдкрд░ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рд▓рд┐рдЦреА рдЬрд╛рддреА рд╣реИред

рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдП рдЧрдП рд╣реБрдХ рдХреЗ рд╕рд╛рде рдЙрджрд╛рд╣рд░рдг hgrc:

 [hooks] postupdate = \path\to\assets.exe pull \path\to\assets.config \path\to\checksum.cache prepush = \path\to\assets.exe push \path\to\assets.config \path\to\checksum.cache 

рд╣реИрд╢рд┐рдВрдЧ


S3 рдореЗрдВ рдЕрдкреАрд▓ рдХрдо рд╕реЗ рдХрдо рдХреА рдЬрд╛рддреА рд╣реИред рдХреЗрд╡рд▓ рджреЛ рдЖрджреЗрд╢реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ: GetObject рдФрд░ PutObjectред рдПрдХ рдлрд╝рд╛рдЗрд▓ S3 рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдФрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЬрд╛рддреА рд╣реИ, рдХреЗрд╡рд▓ рдЕрдЧрд░ рдпрд╣ рдПрдХ рдирдИ рдпрд╛ рд╕рдВрд╢реЛрдзрд┐рдд рдлрд╝рд╛рдЗрд▓ рд╣реИред рдпрд╣ рдХреБрдВрдЬреА рдХреЗ рд░реВрдк рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рд╣реИрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдВрднрд╡ рд╣реИред рдпрд╣реА рд╣реИ, рд╢рд╛рд░реАрд░рд┐рдХ рд░реВрдк рд╕реЗ рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рднреА рд╕рдВрд╕реНрдХрд░рдг S3 рдмрд╛рд▓реНрдЯреА рдореЗрдВ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдкрджрд╛рдиреБрдХреНрд░рдо рдХреЗ рд╣реЛрддреЗ рд╣реИрдВ, рдмрд┐рдирд╛ рдлрд╝реЛрд▓реНрдбрд░реНрд╕ рдХреЗред рдПрдХ рд╕реНрдкрд╖реНрдЯ рдорд╛рдЗрдирд╕ рд╣реИ - рдЯрдХрд░рд╛рд╡ред рдпрджрд┐ рджреЛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдПрдХ рд╣реА рд╣реИрд╢ рд╣реИ, рддреЛ рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХреЗрд╡рд▓ S3 рдореЗрдВ рджрд░реНрдЬ рдирд╣реАрдВ рдХреА рдЬрд╛рдПрдЧреАред

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

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

рдРрд╕рд╛ рдХрд░рдирд╛ рднреА рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИред рдкреБрд╢ рдФрд░ рдкреБрд▓ рдХрдорд╛рдВрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╕рднреА рд╕реНрдерд╛рдиреАрдп рдлрд╛рдЗрд▓реЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╣реИрд╢реЗрдб рд╣реИрдВред рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╣реИрд╢ рдХреЗ рдмреАрдЪ рдХреЛрдИ рдореИрдЪ рд╣реИред рдпрд╣ рдкреБрд╢ рдХреЗ рджреМрд░рд╛рди рдПрдХ рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ рддрд╛рдХрд┐ рдЯрдХрд░рд╛рд╡ рдореЗрдВ рднрдВрдбрд╛рд░ рддрдп рди рд╣реЛред рдпрджрд┐ рдЯрдХрд░рд╛рд╡ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЗрд╕ рдкрд░реЗрд╢рд╛рдиреА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реВрдЪрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЙрд╕реЗ рджреЛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рдмрджрд▓рдиреЗ рдФрд░ рдлрд┐рд░ рд╕реЗ рдкреБрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдРрд╕реА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреА рдХрдо рд╕рдВрднрд╛рд╡рдирд╛ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдпрд╣ рд╕рдорд╛рдзрд╛рди рд╕рдВрддреЛрд╖рдЬрдирдХ рд╣реИред

рдЕрдиреБрдХреВрд▓рди


рдРрд╕реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рдЦреНрдд рдкреНрд░рджрд░реНрд╢рди рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ рдирд╣реАрдВ рд╣реИрдВред рдпрд╣ рдПрдХ рд╕реЗрдХрдВрдб рдпрд╛ рдкрд╛рдВрдЪ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ - рдЗрддрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдРрд╕реЗ рд╕реНрдкрд╖реНрдЯ рд╕реНрдерд╛рди рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдорд╛рдирд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдФрд░ рд╢рд╛рдпрдж рд╕рдмрд╕реЗ рд╕реНрдкрд╖реНрдЯ рд╣реИрд╢рд┐рдВрдЧред

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

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

   | |   

рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЗрд╕ рдлрд╛рдЗрд▓ рдХреЛ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдЕрдкрдбреЗрдЯ рдФрд░ рд╕реЗрд╡ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЕрдЧрд░ logo.jpg рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рд╣реИрд╢ рдХреА рдЖрдЦрд┐рд░реА рдмрд╛рд░ рдПрдХ рджрд┐рди рдкрд╣рд▓реЗ рдЧрдгрдирд╛ рдХреА рдЧрдИ рдереА, рдФрд░ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЖрдЦрд┐рд░реА рдмрд╛рд░ рддреАрди рджрд┐рди рдкрд╣рд▓реЗ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдЗрд╕рдХрд╛ рд╣реИрд╢ рдХреЛ рдкреБрди: рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред

рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝реЗрд╢рди рдХреЛ рд╣реИрд╢ рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрдврд╝рдиреЗ рд╕рд╣рд┐рдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдореВрд▓ FileStream рдХреЗ рдмрдЬрд╛рдп BufferedStream рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЦрд┐рдВрдЪрд╛рд╡ рднреА рдХрд╣рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдкрд░реАрдХреНрд╖рдгреЛрдВ рд╕реЗ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдЧреАрдЧрд╛рдмрд╛рдЗрдЯ рд╕реЗ рдЕрдзрд┐рдХ рдХреЗ рдХреБрд▓ рдЖрдХрд╛рд░ рдХреЗ рд╕рд╛рде 10 рд╣рдЬрд╛рд░ рдлрд╛рдЗрд▓реЛрдВ рдХреА рд░рд╛рдЦ рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП 1 рдореЗрдЧрд╛рдмрд╛рдЗрдЯ (рдлрд╛рдЗрд▓рд╕реНрдЯреНрд░рд╛рдо 8 рдХрд┐рд▓реЛрдмрд╛рдЗрдЯ рдХреЗ рдорд╛рдирдХ рдХреЗ рдмрдЬрд╛рдп) рдХреЗ рдмрдлрд░ рдЖрдХрд╛рд░ рдХреЗ рд╕рд╛рде рдПрдХ рдмрдлрд╝рд░рдбреНрд░реАрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдорд╛рдирдХ рдПрдЪрдбреАрдбреА рдХреЗ рд▓рд┐рдП рдлрд╛рдЗрд▓рд╕реНрдЯреНрд░реАрдо рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрдИ рдмрд╛рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рддреЗрдЬ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдмрд╣реБрдд рд╕рд╛рд░реА рдлрд╛рдЗрд▓реЗрдВ рдирд╣реАрдВ рд╣реИрдВ рдФрд░ рд╡реЗ рд╕реНрд╡рдпрдВ рдореЗрдЧрд╛рдмрд╛рдЗрдЯ рд╕реЗ рдмрдбрд╝реА рд╣реИрдВ, рддреЛ рдЕрдВрддрд░ рдЗрддрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИ рдФрд░ рд▓рдЧрднрдЧ 5-10 рдкреНрд░рддрд┐рд╢рдд рд╣реИред

рдЕрдореЗрдЬрд╝рди s3


рдпрд╣рд╛рдВ рджреЛ рдмрд┐рдВрджреБ рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИрдВред рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рд╢рд╛рдпрдж рдЗрд╕ рдореБрджреНрджреЗ рдХреА рдХреАрдордд рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ, рдирдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд╛ рдкрд╣рд▓рд╛ рд╡рд░реНрд╖ рдореБрдлреНрдд рд╣реИ, рдпрджрд┐ рдЖрдк рд╕реАрдорд╛ рд╕реЗ рдкрд░реЗ рдирд╣реАрдВ рдЬрд╛рддреЗ рд╣реИрдВред рд╕реАрдорд╛рдПрдБ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИрдВ: 5 рдЧреАрдЧрд╛рдмрд╛рдЗрдЯ, рдкреНрд░рддрд┐ рдорд╛рд╣ 20,000 GetObject рдЕрдиреБрд░реЛрдз рдФрд░ рдкреНрд░рддрд┐ рдорд╛рд╣ 2,000 PutObject рдЕрдиреБрд░реЛрдзред рдпрджрд┐ рдЖрдк рдкреВрд░реА рдХреАрдордд рдЪреБрдХрд╛рддреЗ рд╣реИрдВ, рддреЛ рдПрдХ рдорд╣реАрдиреЗ рдХрд╛ рдореВрд▓реНрдп рд▓рдЧрднрдЧ $ 1 рд╣реЛрдЧрд╛ред рдЗрд╕рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдХреНрд╖реЗрддреНрд░ рдХреЗ рднреАрддрд░ рдХрдИ рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░ рдФрд░ рдЕрдЪреНрдЫреА рдЧрддрд┐ рдХреЗ рд▓рд┐рдП рдЖрд░рдХреНрд╖рдг рдорд┐рд▓рддрд╛ рд╣реИред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореБрдЭреЗ рдпрд╣ рд╕реБрдЭрд╛рд╡ рджреЗрдиреЗ рдХреА рд╣рд┐рдореНрдордд рд╣реИ рдХрд┐ рдкрд╛рдардХ рд╢реБрд░реВ рд╕реЗ рд╣реА рдирд┐рдореНрди рдкреНрд░рд╢реНрди рд╕реЗ рдкрд░реЗрд╢рд╛рди рд╣реИ - рдбреНрд░реЙрдкрдмреЙрдХреНрд╕ рдХреНрдпреЛрдВ рд╣реИ? рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рд╕рд╣рдпреЛрдЧ рдХреЗ рд▓рд┐рдП рд╕реАрдзреЗ рдбреНрд░реЙрдкрдмреЙрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИ - рдпрд╣ рд╕рдВрдШрд░реНрд╖реЛрдВ рд╕реЗ рдмрд┐рд▓реНрдХреБрд▓ рднреА рд╕рд╛рдордирд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдЕрдЧрд░ рд╕реАрдзреЗ рдЗрд╕реНрддреЗрдорд╛рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ? рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╡рд░реНрдгрд┐рдд рд╕рдорд╛рдзрд╛рди рдореЗрдВ рдЕрдореЗрдЬрд╝реЕрди рдПрд╕ 3 рдХреЛ рдПрдХ рд╣реА рдбреНрд░реЙрдкрдмреЙрдХреНрд╕, рд╕реНрдХрд╛рдИрдбреНрд░рд╛рдЗрд╡, рдмрд┐рдЯрдЯреЛрд░реЗрдВрдЯ рд╕рд┐рдВрдХ рдпрд╛ рдЕрдиреНрдп рдПрдирд╛рд▓реЙрдЧреНрд╕ рдХреЗ рд╕рд╛рде рдЖрд╕рд╛рдиреА рд╕реЗ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рд╡реЗ рд╕рднреА рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рднрдВрдбрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░реЗрдВрдЧреЗ, рдФрд░ рд╣реИрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдлрд╝рд╛рдЗрд▓ рдирд╛рдореЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдореЗрд░реЗ рд╕рдорд╛рдзрд╛рди рдореЗрдВ, рдпрд╣ FileSystemRemoteStorage, AmazonS3RemoteStorage рдХреЗ рдПрдХ рдПрдирд╛рд▓реЙрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рд╕рдВрд╢реЛрдзрд┐рдд рд╕реНрд░реЛрдд рд▓рд┐рдВрдХ: bitbucket.org/openminded/assetsmanager

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


All Articles