GitHub çµ±å (Heroku GitHub ãããã¤)
ãã®è¨äºã®è±èªçã«æ´æ°ãããã¾ããã覧ã®ç¿»è¨³ã«ã¯å«ã¾ãã¦ããªã夿´ç¹ãããããããã¾ããã
æçµæ´æ°æ¥ 2024å¹´05æ09æ¥(æ¨)
Table of Contents
Heroku 㯠GitHub ã¨çµ±åãããã¨ã§ãGitHub ä¸ã®ã³ã¼ãã Heroku ä¸ã§å®è¡ä¸ã®ã¢ããªã«å®¹æã«ãããã¤ã§ããããã«ãªãã¾ããHeroku ã¢ããªç¨ã® GitHub çµ±åãè¨å®ãããå ´åãHeroku ã¯æå®ããã GitHub ãªãã¸ããªã¸ã®ããã·ã¥ãèªåçã«ãã«ããã(ãã«ãã«æåããå ´åã¯) ãªãªã¼ã¹ãããã¨ãã§ãã¾ãã
GitHub çµ±åã®æå¹å
GitHub çµ±åã¯ãHeroku Dashboardâ ã§ã¢ããªã® Deploy
â ã¿ãããè¨å®ã§ãã¾ãã
GitHub çµ±åãè¨å®ããã«ã¯ãGitHub ã§ã®èªè¨¼ãå¿ è¦ã§ãããã㯠Heroku ã¢ã«ã¦ã³ããã¨ã« 1 åã®ã¿å®è¡ããã°ååã§ãã
GitHub ã®èªåãããã¤ãè¨å®ããã«ã¯ãGitHub ãªãã¸ããªç®¡çè ã¢ã¯ã»ã¹ãå¿ è¦ã§ããããã¯ãHeroku ã§ã¯ GitHub ãªãã¸ããªã«ãµã¼ãã¹ããã¯ãç»é²ããå¿ è¦ãããããã®ã¢ã¯ã·ã§ã³ã«ã¯ç®¡çè ã¢ã¯ã»ã¹ãå¿ è¦ãªããã§ããGitHub çµç¹ã®å ´åãã¦ã¼ã¶ã¼ã® GitHub ã¢ã«ã¦ã³ããçµç¹ã®ã¡ã³ãã¼ã§ããå¿ è¦ããããå¤é¨ã®å ±å使¥è ã§ãã£ã¦ã¯ãªãã¾ããã
ã¦ã¼ã¶ã¼ã®ãªãã¸ããªãããµã¼ããã¼ãã£ã¢ããªã±ã¼ã·ã§ã³å¶éãæå¹åããã¦ããâ GitHub çµç¹å ã«ããå ´åãçµç¹ç®¡çè ã¯ãçµç¹ã§ä½¿ç¨ã§ãããã Heroku ãæ¿èªããå¿ è¦ãããã¾ããGitHub ã«ã¤ãã¦ã®è©³ç´°ã¯ããã¡ãâãåç §ãã¦ãã ããã
Heroku ã¢ããªã GitHub ãªãã¸ããªã«ãªã³ã¯ããå¾ã§ããã©ã³ããã鏿çã«ãããã¤ããããèªåãããã¤ãè¨å®ãããã¨ãã§ãã¾ãã
ã¢ããªããªãå ´åã¯ãGitHub ããã®çµç¹ã®çµ±åãæ¿èªããå¿ è¦ãããã¾ãããã®ããã»ã¹ã«ã¤ãã¦ã®è©³ç´°ã¯ããApproving OAuth Apps for your organizationâã(çµç¹ã® OAuth ã¢ããªã®æ¿èª) ãåç §ãã¦ãã ããã
æåãããã¤
æåãããã¤ã§ã¯ãã¦ã¼ã¶ã¼ã®ã¢ããªã«æ¥ç¶ããã¦ãã GitHub ãªãã¸ããªããä»»æã®ãã©ã³ãã®å³æãããã¤ã使ã§ãã¾ãã夿´ã Heroku ã«ãããã¤ãããã¿ã¤ãã³ã°ã管çããå ´åã¯ãæåãããã¤ã使ç¨ãã¦ãã ããã
ã¾ããæåãããã¤ã¯ãèªåãããã¤ç¨ã«æ§æããã¦ãããã®ã¨ã¯ç°ãªããã©ã³ãã䏿çã«ãããã¤ããããã«ä½¿ç¨ãããã¨ãã§ãã¾ãããã¨ãã°ãéçºã¢ããªã development
â GitHub ãã©ã³ãã«åæãã¦ããããããæ©è½ãã©ã³ãã䏿çã«ãã¹ãããã¨ãã¾ãããã®å ´åã¯ããã®æ©è½ãã©ã³ãã®æåãããã¤ãããªã¬ã¼ããã ãã§ãHeroku ã¢ããªä¸ã§ãã®æ©è½ãã©ã³ãããã¹ãã§ãã¾ãããã ãããã®æ©è½ãã©ã³ãã®ãªãªã¼ã¹ã¯ãGitHub ã development
â ãã©ã³ãã«æ¬¡åæ£å¸¸ã«ããã·ã¥ãããã¨ãã«ä¸æ¸ãããã¾ãã
èªåãããã¤
GitHub ãã©ã³ãã®èªåãããã¤ãæå¹ã«ããå ´åãHeroku ã¯ãã¹ã¦ã®ããã·ã¥ããã«ããã¦ãã®ãã©ã³ãã«ãããã¤ãã¾ãããã¨ãã°ãHeroku ä¸ã«éçºã¢ããªãããå ´åãGitHub development
â ãã©ã³ãã¸ã®ããã·ã¥ãèªåçã«ãã«ãããã¦ãã®ã¢ããªã«ãããã¤ãããããã«è¨å®ã§ãã¾ãã
èªååãããç¶ç¶çã¤ã³ãã°ã¬ã¼ã·ã§ã³ã使ç¨ããããã« (ãã¨ãã° Travis CI ã§) GitHub ãªãã¸ããªãè¨å®ããå ´åã[Wait for CI to pass before deploy] ãã§ãã¯ããã¯ã¹ããã§ãã¯ãããã¨ãã§ãã¾ããæå¹ã«ããå ´åãHeroku ã¯é¢é£ããã³ãããã®ãã¹ã¦ã®ã³ãããã¹ãã¼ã¿ã¹ã success
â ã¨è¡¨ç¤ºãããå¾ã«ã®ã¿èªåãããã¤ãã¾ãã
ãã§ãã¯ã® 1 ã¤ã pending
â ã¹ãã¼ã¿ã¹ã示ãã¦ããããããã®ã³ãããã¯èªåãããã¤ããã¾ããã
ãã¹ã¦ã®ãã§ãã¯ã success
â ã¹ãã¼ã¿ã¹ã示ãã¦ããããããã®ã³ãããã¯èªåãããã¤ããã¾ãã
ã¬ãã¥ã¼ã¢ããª
Heroku ã¢ããªã«å¯¾ãã¦ã¬ãã¥ã¼ã¢ããªãæå¹ã«ããã¨ãHeroku ã¯è¦ªã¢ããªã«æ¥ç¶ããã¦ãã GitHub ãªãã¸ããªä¸ã§éãã¦ããåãã«ãªã¯ã¨ã¹ãã«å¯¾ãã¦ä¸æçãªãã¹ãã¢ããªã使ãã¾ããã¬ãã¥ã¼ã¢ããªã¯ãGitHub Flowâ ã使ç¨ãã¦ãã³ã¼ããã¼ã¹ã¸ã®å¤æ´ãææ¡ãè°è«ãããã³ç®¡çããå ´åã«åªãã¦ãã¾ãããã«ãªã¯ã¨ã¹ããã©ã³ãã¯ãHeroku ä¸ã®æ°ããã¢ããªã«ãããã¤ããããããã¦ã¼ã¶ã¼ããã³å ±å使¥è ã¯é常ã«ã·ã³ãã«ã«ã³ã¼ããã©ã³ãããã¹ãããã³ãããã°ã§ãã¾ããã¾ããGitHub ãã©ã³ãã表ã Heroku ã¢ããªä¸ã§ãèªååãããçµ±åãã¹ããå®è¡ãããã¨ãã§ãã¾ãã
詳細ã¯ãã¬ãã¥ã¼ã¢ããªã®è¨äºâãã覧ãã ããã
Heroku CI
GitHub ãªãã¸ããªã Pipeline ã«æ¥ç¶ããããHeroku CIâ ããªã³ã«ãããã¨ãã§ãã¾ãããã㯠Heroku Pipeline ã«å®¹æã«çµ±åã§ãã (ãããã£ã¦ãã¬ãã¥ã¼ã¢ããªãæ¢åã® Heroku ã¢ããªãããã³ GitHub çµ±åãè£å®ãã)ãè¦è¦çã§ä½è¨å®ã®ãã¹ãã©ã³ãã¼ã§ãããã¹ã¦ã® Heroku Pipeline 㯠Heroku CI ã«å¯¾å¿ãã¦ãããããPipeline ã® Settings
â ã¿ãã§ããããªã³ã«ãã¾ãã
Diff ã¸ã®ãªã³ã¯
GitHub ãªãã¸ããªã«ãªã³ã¯ããã¦ããã¢ããªã®å ´åãããã·ã¥ãã¼ãã® Activity
â ã¿ãã®ãªãªã¼ã¹ã«ã¯ [View Diff] ã®ãªã³ã¯ãå«ã¾ãã¦ãã¾ãããªã³ã¯ããã©ãã¨ãæçµãªãªã¼ã¹ä»¥éã®å¤æ´å
容ã示ã GitHub æ¯è¼ãã¥ã¼ã表示ããã¾ãã
GitHub ããã®åæ
åã ã®ã¢ããªã®åæ
åã
ã®ã¢ããªã¯ãGitHub ãã¤ã³ã®åã¢ããªã® Deploy
â ã¿ãã§åæã§ãã¾ãã
ã¢ã«ã¦ã³ãã®åæ
Heroku ããã³ GitHub ã¢ã«ã¦ã³ãã¯ãããã·ã¥ãã¼ãã¢ã«ã¦ã³ããã¼ã¸ã®ã¢ããªã±ã¼ã·ã§ã³ãã¤ã³âã§åæã§ãã¾ãã
ãããã質å
GitHub çµ±åã¯ãèªåã® Heroku ã«ãã¹ãããã Git ãªãã¸ããªã¨åæããã¾ãã?
GitHub çµ±åãæå¹åãããã¢ããªã®å ´åãHeroku 㯠GitHub ãªãã¸ããªã®ã³ã³ãã³ãã Heroku ã«ãã¹ãããããªãã¸ããªã«åæãã¾ããâããã®ä»£ããã«ãHeroku 㯠GitHub ããã½ã¼ã¹ãç´æ¥ãã«ãã¾ããHeroku Git ãªã¢ã¼ãã«ã³ã¼ããããã·ã¥ãããã¨ãæè¡çã«ã¯å¯è½ã§ãããã©ã®ã³ã¼ããã¢ããªã«ç¾å¨ãããã¤ããã¦ããã®ãã«ã¤ãã¦å ±å使¥è ãæ··ä¹±ãããããããããããããããããã¨ã¯æ§ãã¦ãã ããã
GitHub 以å¤ã®ãã¼ã¸ã§ã³ç®¡çãããã¤ãã¼ã使ç¨ãããã©ããªãã¾ãã?
Heroku ã¯ç¾å¨ãGitHub 以å¤ã®ãã¼ã¸ã§ã³ç®¡çãããã¤ãã¼ã®ããã®èªç¤¾è£½ã®ãããã¤çµ±åæ©è½ãæä¾ãã¦ãã¾ãããGitLab ã Bitbucket ãªã©ã®å¥ã®ãã¼ã¸ã§ã³ç®¡çãããã¤ãã¼ã使ç¨ããå ´åã®ãããã¤ãªãã·ã§ã³ã«ã¤ãã¦ã¯ããã¡ãã®è¨äºâãåç §ãã¦ãã ããã
ãã«ãåºåã¯ã©ãã«è¡¨ç¤ºããã¾ãã?
ãã«ãåºåã¯ãHeroku Dashboard ä¸ã«ããå½è©²ã¢ããªã±ã¼ã·ã§ã³ã® Activity
â ã¿ãã«è¡¨ç¤ºããã¾ãããã«ãåºåã®å±¥æ´ããé²è¡ä¸ã®ãã«ãã®ã¹ããªã¼ã åºåã確èªãããã¨ãã§ãã¾ãã
GitHub çµ±åã¯ã¹ãã¼ãç§»è¡ãèªåçã«å®è¡ãã¾ãã?
ããã©ã«ãã§ã¯ãHeroku ã¯ãããã¤ä¸ã«ãRails ãªã©ã®ãã¬ã¼ã ã¯ã¼ã¯ã«ãã£ã¦æå®ãããç§»è¡ãå®è¡ãã¾ããã
Heroku Release Phaseâ ã使ç¨ããã¨ãã¢ããªã®æ°ãããã¼ã¸ã§ã³ã®å®è¡åã®ã¹ãã¼ãç§»è¡ãªã©ã®ä¸è¬çãªã¿ã¹ã¯ãå®è¡ã§ãã¾ãã詳細ã¯ãé¢é£ããããã¥ã¡ã³ããåç §ãã¦ãã ããã
GitHub çµ±å㯠Git ã®ãµãã¢ã¸ã¥ã¼ã«ã¨é£åãã¾ãã?
ãµãã¢ã¸ã¥ã¼ã«ã使ç¨ãã GitHub ãªãã¸ããªã¯ä¸è¬çã« Heroku ã«æ£å¸¸ã«ãããã¤ããã¾ãããããã¯ãrepo-content ã® tarball ãçæãããå ´åã¯ãGitHub ã«ãµãã¢ã¸ã¥ã¼ã«ã®ã³ã³ãã³ãããªãããã§ãã
Heroku ãèªåã® GitHub ãªãã¸ããªã«ã¢ã¯ã»ã¹ã§ããªãã®ã¯ãªãã§ãã?
GitHub çµ±åããªãã¸ããªã®å 容ã«ã¢ã¯ã»ã¹ã§ããªãå ´åãä¸è¬çã«æ¬¡ã®ãããããåå ã¨ãªã£ã¦ãã¾ãã
- GitHub ã¦ã¼ã¶ã¼ããªãã¸ããªã¸ã®ã¢ã¯ã»ã¹æ¨©éã失ã£ããããã¯ãªãã¸ããªã¸ã®ã¢ã¯ã»ã¹æ¨©éãåã³è¦æ±ããããå¥ã® GitHub ã¦ã¼ã¶ã¼ã使ç¨ãããã¨ã§å¯¾å¦ã§ãã¾ãã
- ãµã¼ããã¼ãã£ã¢ããªã±ã¼ã·ã§ã³å¶éâãçµç¹ã§æå¹ã«ãªã£ã¦ããããµã¼ããã¼ãã£ã¢ããªã±ã¼ã·ã§ã³å¶éãæå¹ã«ãªã£ã¦ããå ´åã
Heroku Dashboard
â OAuth ã¢ããªã±ã¼ã·ã§ã³ã«çµç¹ã¸ã®ã¢ã¯ã»ã¹æ¨©éãä»ä¸ããå¿ è¦ãããã¾ãããããè¡ãæ¹æ³ã«ã¤ãã¦ã¯ãGitHub ã®ããã¥ã¡ã³ãâãåç §ãã¦ãã ããã - ãªãã¸ããªãåå¨ããªããªã£ãã
- GitHub ã¦ã¼ã¶ã¼ãçµç¹ã®å¤é¨ã®å ±å使¥è ã§ãããç¾å¨ãµãã¼ãããã¦ããªããã¦ã¼ã¶ã¼ã¯çµç¹ã®ã¡ã³ãã¼ã§ããå¿ è¦ãããã¾ãã
ã¢ã¯ãã£ããã£ãã°ã§ããããã¤ã®åå ã¨ãã¦ééã£ãã¦ã¼ã¶ã¼ãæå®ããã¦ããã®ã¯ãªãã§ãã?
GitHub ããã®éç¥ãåãã¦ãã«ããããªã¬ã¼ããã¨ããGitHub ã¦ã¼ã¶ã¼ ID ãåãåãããªã³ã¯ããã¦ãã Heroku ã¢ã«ã¦ã³ããè¦ã¤ãããã¨ãã¾ããGitHub ID ã«ä¸è´ãããªã³ã¯æ¸ã¿ã¢ã«ã¦ã³ããè¦ã¤ãããªãå ´åãPipeline ã¾ãã¯ã¢ããªã GitHub ã«æ¥ç¶ããã¦ã¼ã¶ã¼ããããã表示ããã¾ãã
åå ã¨ãªãã¦ã¼ã¶ã¼ãæ£ããæå®ããã¦ããªãå ´åãããã·ã¥ãã¼ãã使ç¨ãã¦ã¢ã«ã¦ã³ãã GitHub ã«æ¥ç¶ããã¨ããã®åé¡ã解決ãããå¯è½æ§ãããã¾ãã
Heroku ã§èªåã® GitHub ãªãã¸ããªã«å¯¾ããèªã¿åãã¨æ¸ãè¾¼ã¿ã®è¨±å¯ãå¿ è¦ãªã®ã¯ãªãã§ãã?
ããã«ã¯ããã¤ãã®çç±ãããã¾ãã
ã¬ãã¥ã¼ã¢ããªãããããã¤ãè¡ãããå ´åãHeroku GitHub çµ±åã¯ãã³ã¼ãããããã¤ããããã¨ã示ããããã¤ã¹ãã¼ã¿ã¹ãããã®ãªã³ã¯ã¨ä¸ç·ã«å ¬éãã¾ãã
ã¬ãã¥ã¼ã¢ããªãæå¹åããã¨ãããµã¼ãã¹ã§ã¯ãã¬ãã¥ã¼ã¢ããªãèªåçã«ãã«ãã§ããããã«ããããã«å¿ è¦ãª
app.json
â ãã¡ã¤ã«ãã¦ã¼ã¶ã¼ãæã£ã¦ãããã¨ã確èªãã¾ãããã®ãã¡ã¤ã«ã¯èªåçã«çæããã¦ãªãã¸ããªã«ã³ãããããã¾ããGitHub çµ±åãµã¼ãã¹ã¯èªåãããã¤ãé§åãããç®çã§ãã«ã¹ã¿ã ããã¯ããªãã¸ããªã«è¿½å ã§ããããã«ããå¿ è¦ãããã¾ãããããããã¨ã§ãã¦ã¼ã¶ã¼ã夿´å 容ããã©ã³ãã«ããã·ã¥ãããããã GitHub ããã®ãã®ã§ãããã¨ãæ¤è¨¼ããã¨ãã«ãGitHub ããéç¥ãåãåããã¨ãã§ãããã®ããã«ã¯ãªãã¸ããªã¸ã®ç®¡çã¢ã¯ã»ã¹ãå¿ è¦ã§ãã
GitHub ã¢ããªã§ã¯ããªãã¸ããªã®ããç´°ããå¶å¾¡ãå¯è½ã§ããããã®æ©è½ã¯ GitHub çµ±åã«ã¾ã çµ±åããã¦ãã¾ãããã¹ã±ã¸ã¥ã¼ã«ã®ç¢ºç´ã¯ã§ãã¾ãããããã®ãã¨ã¯ Heroku ã§ç¢ºãã«èªèããã¦ãã¾ããHeroku Changelog ã«æ³¨ç®ãã¦ããã¦ãã ããã
ä¸è¨ããã¹ã¦è©²å½ããªãå ´åã¯ããµãã¼ããã±ããããªã¼ãã³ãã¦ãã ããâã