GitHub ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅Π΄ΠΈΠ» ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΎΠ± Π°ΡΠ°ΠΊΠ΅, Π½Π°ΡΠ΅Π»Π΅Π½Π½ΠΎΠΉ Π½Π° Π·Π°Π³ΡΡΠ·ΠΊΡ Π΄Π°Π½Π½ΡΡ ΠΈΠ· ΠΏΡΠΈΠ²Π°ΡΠ½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠΊΠΎΠΌΠΏΡΠΎΠΌΠ΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠΎΠΊΠ΅Π½ΠΎΠ² OAuth, ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π΄Π»Ρ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² Heroku ΠΈ Travis-CI. Π‘ΠΎΠΎΠ±ΡΠ°Π΅ΡΡΡ, ΡΡΠΎ Π² Ρ ΠΎΠ΄Π΅ Π°ΡΠ°ΠΊΠΈ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»Π° ΡΡΠ΅ΡΠΊΠ° Π΄Π°Π½Π½ΡΡ ΠΈΠ· ΠΏΡΠΈΠ²Π°ΡΠ½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΉ, ΠΎΡΠΊΡΡΠ²ΡΠΈΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΠΌ Π΄Π»Ρ PaaS-ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Heroku ΠΈ ΡΠΈΡΡΠ΅ΠΌΡ Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎΠΉ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Travis-CI. Π ΡΠΈΡΠ»Π΅ ΠΏΠΎΡΡΡΠ°Π΄Π°Π²ΡΠΈΡ ΠΎΠΊΠ°Π·Π°Π»Π°ΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ GitHub ΠΈ ΠΏΡΠΎΠ΅ΠΊΡ NPM.
ΠΡΠ°ΠΊΡΡΡΠΈΠ΅ ΡΠΌΠΎΠ³Π»ΠΈ ΠΈΠ·Π²Π»Π΅ΡΡ ΠΈΠ· ΠΏΡΠΈΠ²Π°ΡΠ½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² GitHub ΠΊΠ»ΡΡ Π΄Π»Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ API Amazon Web Services, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π² ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° NPM. ΠΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΠΊΠ»ΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ» ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ NPM-ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌ, Ρ ΡΠ°Π½ΡΡΠΈΠΌΡΡ Π² ΡΠ΅ΡΠ²ΠΈΡΠ΅ AWS S3. GitHub ΡΡΠΈΡΠ°Π΅Ρ, ΡΡΠΎ Π½Π΅ΡΠΌΠΎΡΡΡ Π½Π° ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΠΌ NPM, Π΄Π΅Π»ΠΎ Π½Π΅ Π΄ΠΎΡΠ»ΠΎ Π΄ΠΎ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ , ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ ΡΡΡΡΠ½ΡΠΌΠΈ Π·Π°ΠΏΠΈΡΡΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ. Π’Π°ΠΊΠΆΠ΅ ΠΎΡΠΌΠ΅ΡΠ°Π΅ΡΡΡ, ΡΡΠΎ ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ GitHub.com ΠΈ NPM ΡΠ°Π·Π΄Π΅Π»Π΅Π½Ρ, Π°ΡΠ°ΠΊΡΡΡΠΈΠ΅ Π½Π΅ ΡΡΠΏΠ΅Π»ΠΈ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² GitHub, Π½Π΅ ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ NPM, Π΄ΠΎ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ½ΡΠ΅ ΡΠΎΠΊΠ΅Π½Ρ Π±ΡΠ»ΠΈ Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½Ρ.
ΠΡΠ°ΠΊΠ° Π±ΡΠ»Π° Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π° 12 Π°ΠΏΡΠ΅Π»Ρ, ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π°ΡΠ°ΠΊΡΡΡΠΈΠ΅ ΠΏΠΎΠΏΡΡΠ°Π»ΠΈΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ»ΡΡ ΠΊ API AWS. ΠΠΎΠ·Π΄Π½Π΅Π΅ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Ρ ΠΏΠΎΡ ΠΎΠΆΠΈΠ΅ Π°ΡΠ°ΠΊΠΈ ΠΈ Π½Π° Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ, Π² ΠΊΠΎΡΠΎΡΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈΡΡ ΡΠΎΠΊΠ΅Π½Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Heroku ΠΈ Travis-CI. ΠΠΎΡΡΡΠ°Π΄Π°Π²ΡΠΈΠ΅ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Π½Π΅ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ, Π½ΠΎ Π²ΡΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ, ΠΊΠΎΡΠΎΡΡΡ Π·Π°ΡΡΠΎΠ½ΡΠ»Π° Π°ΡΠ°ΠΊΠ°, ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Heroku ΠΈ Travis-CI ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π½ΠΎ ΠΈΠ·ΡΡΠΈΡΡ Π»ΠΎΠ³ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΈ Π°ΡΠ΄ΠΈΡΠ° Π΄Π»Ρ Π²ΡΡΠ²Π»Π΅Π½ΠΈΡ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΉ ΠΈ Π½Π΅ΡΠΈΠΏΠΈΡΠ½ΠΎΠΉ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ.
ΠΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΠΎΠΊΠ΅Π½Ρ ΠΏΠΎΠΏΠ°Π»ΠΈ Π² ΡΡΠΊΠΈ Π°ΡΠ°ΠΊΡΡΡΠΈΡ
ΠΏΠΎΠΊΠ° Π½Π΅ ΡΡΠ½ΠΎ, Π½ΠΎ GitHub ΡΡΠΈΡΠ°Π΅Ρ, ΡΡΠΎ ΠΎΠ½ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½Ρ Π½Π΅ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΊΠΎΠΌΠΏΡΠΎΠΌΠ΅ΡΠ°ΡΠΈΠΈ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΠΎΠΊΠ΅Π½Ρ Π΄Π»Ρ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ Π΄ΠΎΡΡΡΠΏΠ° Ρ Π²Π½Π΅ΡΠ½ΠΈΡ
ΡΠΈΡΡΠ΅ΠΌ Π½Π΅ Ρ
ΡΠ°Π½ΡΡΡΡ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ GitHub Π² ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅, ΠΏΡΠΈΠ³ΠΎΠ΄Π½ΠΎΠΌ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. ΠΠ½Π°Π»ΠΈΠ· ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ Π°ΡΠ°ΠΊΡΡΡΠ΅Π³ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Π», ΡΡΠΎ Π²Π΅ΡΠΎΡΡΠ½ΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠ΅Π»ΡΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΏΡΠΈΠ²Π°ΡΠ½ΡΡ
ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² ΡΠ²Π»ΡΠ΅ΡΡΡ Π°Π½Π°Π»ΠΈΠ· Π½Π°Π»ΠΈΡΠΈΡ Π² Π½ΠΈΡ
ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΡ
Π΄Π°Π½Π½ΡΡ
, ΡΠ°ΠΊΠΈΡ
ΠΊΠ°ΠΊ ΠΊΠ»ΡΡΠΈ Π΄ΠΎΡΡΡΠΏΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΡ Π°ΡΠ°ΠΊΠΈ Π½Π° Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru