ããã«ã¡ã¯ãHabrïŒä»å¹ŽãPhpStormã®2çªç®ã®ã¡ãžã£ãŒãªãªãŒã¹ãçºè¡šã§ããããšãããããæããŸãã
ã«ããã®äžã«ã¯ããã¹ãŠã®æ³šç®ãã¹ã倿Žãšæ°æ©èœã®è©³çްãªåæããããŸããæ³šæããŠãã ãã-ããããã®åçã
PHP8ã®ãŠããªã³ã¿ã€ã
PHP 8ã«ã¯éåžžã«å€ãã®æ°æ©èœããããããããçšåºŠã¯æ°ããèšèªã§ãããããŸããç§ãã¡ã¯8ã€ã®ãµããŒãã®å±éãæ©æã«éå§ããæåã®å€§ããªæ©èœã¯ããŒãžãããã¿ã€ãã§ããã
é£çµå
T1|T2|...ã¯ãåŒæ°ãããããã£ãæ»ãå€ãªã©ãåãæå®ã§ããå Žæã§ããã°ã©ãã§ã䜿çšã§ããŸãããã®å Žåã倿°ã¯ãªã¹ããããã¿ã€ãã®1ã€ãåãããšãã§ããŸãã
å®éãé£çµåã¯PHPDocã§é·ãé䜿çšãããŠããŸããããçŸåšãã€ã³ã¿ãŒããªã¿ãŒã¯å®éã«å®è¡æã«ãããããã§ãã¯ããŸãã
èšèªããŒãžã§ã³ã®åãæ¿ã
ãã¹ãŠã®å¯èœæ§ã確èªããã«ã¯ãLanguagesïŒFrameworks |ã§èšèªããŒãžã§ã³ãPHP8ã«æåã§åãæ¿ããããšãã§ããŸããPHP | PHPèšèªã¬ãã«ã
ãŸãã¯ãã³ãŒãã«ãã§ã«æ°æ©èœã®äœ¿çšãå«ãŸããŠããå Žåã¯ãã¯ã€ãã¯ãã£ãã¯ã¹ïŒAlt + EnterïŒã䜿çšããŠåãæ¿ããããšãã§ããŸãã
ãŸããPHPã®ããŒãžã§ã³ãcomposer.jsonã§æå®ãããŠããå ŽåãPhpStormã¯ãããèªåçã«ãã«ã¢ããããŸãã
PHPDocããã€ãã£ãã®çµååã«å€æãã
çµåãããã¿ã€ãã®PHPDocã¿ã°ã§ã¯ã€ãã¯ãã£ãã¯ã¹ïŒAlt + EnterïŒãåŒã³åºãããšãã§ããŸãã
äžèŠãªPHPDocã®åé€
PHPDocã«å宣èšã®ã¿ãå«ãŸããŠããå Žåãåé·ãªã¯ã€ãã¯ãã£ãã¯ã¹ïŒAlt + EnterïŒãšããŠåé€ã§ããããã«ãªããŸããã
ãã®ãããªåé€ã¯åžžã«å®å šã§ãããšèŠãªãããã³ãããããåã«èªåçã«å®è¡ãããŸããïŒãã®ãããªæ©èœã®è¿œå ãæ€èšããŠããŸãã
ã¿ã€ãã®æ€èšŒ
PhpStormã¯ãPHPDocã¿ã°ããã®æ å ±ã«ãã£ãŠåãè§£æããéåãèŠã€ããããšãã§ããŸããããã€ãã£ã宣èšã«ããããããã®å¯èœæ§ã¯æ¡å€§ããŸããã
ããããã£ãåŒæ°ãæ»ãå€ãªã©ããã¹ãŠã®ãã§ãã¯ãè¡ãããŸãã
ããã¯ãéåãããã«ã¯ããããªãè€éãªã³ãŒãã§ç¹ã«åœ¹ç«ã¡ãŸãã
ç䌌ã¿ã€ãfalse
äžéšã®
falseãšã©ãŒæã«æ»ãå¯èœæ§ããããŸããããšãã°ãããã¯ããããã©ã®ããã«åäœãããstrpos()ãarray_search()ããã³310ã®ä»ã®æšæºæ©èœã§ãã
ãã®å Žåãããšãã°
int|boolãæ»ãã¿ã€ããé£çµãšããŠæå®ããããšã¯å¯èœã§ãããå®étrueã«ã¯ååšããŸããã
ãã®ãããªå Žåã®ããã«ãç䌌åãå°å ¥ãããŸãã
falseãçµåã§ã®ã¿äœ¿çšã§ããŸãããã以å€ã®å ŽåãPhpStormã¯ç¡å¹ãªã³ãŒãã匷調衚瀺ããŸãã
éè€ããã³åé·ã¿ã€ã
ã¿ã€ããŠããªã³ã§ã®å€ãã®çµã¿åããã¯çŠæ¢ãããŠããããåã«äžèŠã§ããäŸãã°ïŒ
bool|false--falseãå«ãŸããŠããããbool;Foo|FooãŸãã¯int|string|INT-ç¹°ãè¿ã;object|User-objectæ æã«ä»ã®ãã¹ãŠãå«ãŸããŠããŸããiterable|arrayãŸãã¯iterable|Traversable-iterableé åãšTraversableãå«ã¿ãŸããvoid-æ»ãå€ã§ã®ã¿äœ¿çšã§ããåç¬ã§ã®ã¿äœ¿çšã§ããŸããfalseãŸãã¯null-é¢é£ä»ãã®äžéšãšããŠã®ã¿ã
PhpStormã¯ããã®ãããªéåããã¹ãŠåŒ·èª¿è¡šç€ºããŸãã
ãã«å¯èœãªã¿ã€ã
å€ãæ§æã¯
?Typeãã®çç¥åœ¢ãšèŠãªãããããã«ãªããŸããType|nullã
ãã ãã
?解決ã§ããªããããŸãããååšãããããçç¥åœ¢cãçµåã«äœ¿çšããããšã¯ã§ããŸããã
ãã®ãããªå ŽåãPhpStormã«ã¯ã¯ã€ãã¯ãã£ãã¯ã¹ïŒAlt + EnterïŒããããŸãã
ç¶æ¿ã«ããã¿ã€ãã®å€æŽ
ã¡ãœããã«ã¯2ã€ã®ã«ãŒã«ããã
ãŸãããã©ã¡ãŒã¿ã¿ã€ãã¯éå€ã§ããã€ãŸããæ¡åŒµã§ããŸãã
æ»ãå€ã®ã¿ã€ãã¯å ±å€ã§ããã€ãŸããçµã蟌ãããšããã§ããŸããã
ãã®å Žåãã¿ã€ãã®é åºã¯éèŠã§ã¯ãªãã
Type1|Type2åçType2|Type1ã§ãã
ããããã£ã®ã¿ã€ãã¯å€æŽã§ããŸããã
ç¶æ¿ãããããããã£ã®ã¿ã€ãã¯ãèŠªã«æžããå¿ èŠããããŸããæ¬¡ã«äŸã瀺ããŸãã
æ°ããå¶åŸ¡ãããŒãšã³ãžã³
å¶åŸ¡ãããŒãšã³ãžã³ã®æŽæ°ã«ãããæ°ããæ€æ»ã远å ããå€ãã®å€ããã°ãä¿®æ£ããããšãå¯èœã«ãªããŸããããã®çµæãPhpStormã¯ã³ãŒããããã«ããçè§£ããŸãã
ããã€ãã®å Žæã§ã¯ãæ°ããæ€æ»ããã®åŒ·èª¿è¡šç€ºãšèŠåãèŠãããšãã§ããŸãããããã®ããã€ãã¯ããã°ã®æœåšçãªåå ãšããŠæ³šæãå¿ èŠãšããå ŽåããããŸããä»ã®äººãä¿®æ£ãããšãã³ãŒããããã¯ãªãŒã³ã«ãªããŸãã
æ€æ»ã®äŸãããã€ã瀺ããŸãã
倿°ã¯åžžã«trueãŸãã¯false
ã§ããdoctrine / ormã®Parser.phpãã¡ã€ã«ã®äŸã
æ¡ä»¶ã¯åžžã«trueã§ããsymfony / formã®FormValidator.php
ãã¡ã€ã«ã®äŸãinstanceofã®çµæã¯åžžã«trueã§ããsymfony / monolog -bridgeã®Logger.php ãã¡ã€ã«ã®äŸãåžžã«ã¿ã€ãã«ãªããŸã
$thisResetInterfaceããã¯éå±€ã®äžäœã«ããããã§ãã
åŒã¯åžžã«null
ã§ããsymfony / processã®ProcessUtils.phpãã¡ã€ã«ã®äŸã
æ°ããã¢ã¯ã·ã§ã³ïŒã¿ã€ãæ å ±ïŒââ§P / Ctrl + Shift + PïŒ
ä»»æã®åŒã®äžã«ãã£ã¬ããã眮ããŠãã®ã¢ã¯ã·ã§ã³ãåŒã³åºããšãPhpStormããã®åŒã«å¯ŸããŠã©ã®ã¿ã€ããæšæž¬ãããã確èªã§ããŸãã[衚瀺]ã¡ãã¥ãŒããå©çšå¯èœ| æ å ±ãå ¥åãããããããããŒââ§P / Ctrl + Shift + Pã䜿çšããŸãã
Composerã®æ¹å
ããŒãžã§ã³2020.1以éãComposerã«äŸåãããã¹ãŠã®ã¢ã¯ã·ã§ã³ã¯ãcomposer.jsonãã¡ã€ã«ã®PhpStormã§çŽæ¥å®è¡ã§ããŸãããã®ãªãªãŒã¹ã«ã¯ããã€ãã®æ¹åç¹ããããŸãã
ã«ã¹ã¿ã ãªããžããªã®ãµããŒãSatis / Packagist
ããªããžããªãã»ã¯ã·ã§ã³ã§ã«ã¹ã¿ã ãœãŒã¹ãæå®ãããšãããããã®ãã¹ãŠã®ããã±ãŒãžã§ã³ãŒãè£å®ãå©çšã§ããããã«ãªããŸããããã±ãŒãžãšããŒãžã§ã³ã®æ å ±ã¯PhpStormã«ãã£ãã·ã¥ãããŸãã
ããã«ãè€æ°ã®ããŒãžã§ã³ãæå®ãããŠãã
å ŽåããŒãžã§ã³ãã³ã³ããŸãã¯ãã€ãïŒ
||ïŒã§åºåãããŠãªã¹ããããŠããå ŽåãPhpStormã¯æ£ããæ©èœãã䜿çšå¯èœãªãªãã·ã§ã³ã衚瀺ãããããã«ãªããŸããã
ã³ãŒããšãµã€ã
ãžã®ãªã³ã¯æ å ±ãå«ããããã¢ããã®åããã±ãŒãžã«ã¯ããµã€ããžã®ãªã³ã¯ããããŸãã
ã³ãŒãå質ããŒã«ã®èšå®
äŸåé¢ä¿ã®ãªã¹ãã«PhpStormã§ãµããŒããããŠããã³ãŒãå質ããŒã«ãå«ãŸããŠããå Žåããããã®å察åŽã«èšå®ã«ç§»åããããã®ã¬ã³ãã¢ã€ã³ã³ããããŸãã
ã³ãŒãå質ããŒã«ã®æ¹å
ã¡ãªã¿ã«ãé«å質ã®ããŒã«ã«ã€ããŠãPhpStorm 2020.2ã«ã¯ãããã€ãã®äŸ¿å©ãªè¿œå æ©èœããããŸãã
Docker Composeã®
ãµããŒãPHP_CodeSnifferãPHP CS Fixerãããã³PHP Mess Detectorã¯ãdockercomposeãä»ããŠå®è¡ã§ããŸãã
PHP_CodeSnifferã®äŸå€ãªã¹ã
ã«ã¹ã¿ã ã«
ruleset.xmlã»ã¯ã·ã§ã³ãããå Žå"exclude-pattern"ããããèæ
®ãããæå®ããããã¹äžã®ãã¡ã€ã«ã¯IDEã§åæãããŸããã
ãªã¢ãŒãã€ã³ã¿ãŒããªã¿ãŒãä»ãããã©ãŒããã
PHPCS Fixerããã³PHPCBFã¯ãSSHãDockerãDocker ComposeãVagrantãªã©ãä»ããŠã€ã³ã¿ãŒããªã¿ãŒã§å®è¡ã§ããŸãã
ã³ãã³ãã©ã€ã³ããŒã«
ãã¹ãŠã®Symfonyã³ãã³ããLaravel ArtisanãDrupal DrushãWP-CLIãããã³Composerã¹ã¯ãªããã¯ãã¿ãŒããã«ãéããªããŠããPhpStormã§éåžžã«é«éã«å®è¡ã§ããŸãã
ãããè¡ãã«ã¯ã[ããŒã«] | [ããŒã«]ã«é©åãªããŒã«ã远å ããŸããã³ãã³ãã©ã€ã³ããŒã«ã®ãµããŒãã
次ã«ããã¯ãªãã¯ãããšã[äœã§ãå®è¡]
Ctrl-Ctrlè¡ã衚瀺ãããèªåå®äºæ©èœãåãããã¹ãŠã®ã³ãã³ãã䜿çšã§ããŸãã
ãã®ãªãªãŒã¹ä»¥éãSymfonyãLaravelãããã³Drushçšã«äœãæ§æããå¿
èŠã¯ãããŸããããããžã§ã¯ããéããã¯ãªãã¯ããŠã³ãã³ãã®å
¥åãéå§ããã ãã§ååã§ããïžmacOSäžã®Laravelã®å Žåããã¡ã€ã«ã¯å®è¡å¯èœã§ããå¿
èŠããããŸãïŒïŒã
Ctrl-Ctrl
artisanchmod +x artisan
ããã«ãããŒã«ã¯ä»»æã®ãªã¢ãŒãã€ã³ã¿ãŒããªã¿ãŒïŒSSHãDockerãDocker ComposeãVagrantïŒãä»ããŠå®è¡ã§ããããã«ãªããŸãããããšãã°ãã€ã¡ãŒãžããDockerã€ã³ã¿ãŒããªã¿ãŒã远å ããããšã§ãPHP8ã¢ããªã±ãŒã·ã§ã³ããã°ãããã¹ãã§ããŸã
php:rc-cliã
æ°ãããªãã¡ã¯ã¿ãªã³ã°ïŒã¯ã©ã¹æœåº
ã¯ã©ã¹ã¯æåã¯ãã¡ããšãããã«èŠããŸãããã®åŸããŸããŸãå€ãã®æ°ããã¡ãœãããšããããã£ããããã«è¿œå ãããé ããæ©ãããã¯ã©ã¹ã¯ãã§ã«ãèšãã¿ããããããåŽé¢ããã®è²¬ä»»ã§å€§ãããªããããŠããŸãã
ããã§ã¯ãé¢é£ããäžé£ã®ã¡ãœãããšããããã£ãæ°ããã¯ã©ã¹ã«å²ãåœãŠããšåœ¹ç«ã¡ãŸããããã¯ãŸãã«ãæ°ããExtractClassãªãã¡ã¯ã¿ãªã³ã°ãæäŸãããã®ã§ãã
詊ãã«ã¯ãã¯ã©ã¹å ãã¯ãªãã¯ããŠã
Ctrl+T[ã¯ã©ã¹ã®æœåº]ãéžæããå¿
èŠããããŸããPhpStormã¯ãæ°ããã¯ã©ã¹ã®ååãå
¥åããããã«æ±ããŸããããã«ãååŸããã¡ãœãããšã¯ã©ã¹ãããã«éžæã§ããŸãã
ãã®ãªãã¡ã¯ã¿ãªã³ã°ã¯ãéåžžã®æ©èœã§ãæ©èœããŸãã
ãã®ä»ã®PHP
æ°ããæ€æ»ïŒå ¥åãããããããã£ãå²ãåœãŠãããŠããªãå¯èœæ§ããããŸã
åä»ãããããã£ã宣èšãããŠãããåæåãããŠããªãå Žåããããèªã¿åãããšãããšãšã©ãŒãçºçããŸã
TypeErrorïŒããžãã¯ããããã£ãå®çŸ©ãããŠããªãå Žå__get()ïŒãPhpStormã¯ãåæåãããŠããªãããããã£ããã®èªã¿åãã匷調衚瀺ããŸãã
æ°ããæ€æ»ïŒæžã蟌ã¿ã¢ã¯ã»ã¹ã§ã®ã¿äœ¿çšãããã¢ã¬ã€
doctrine / ormã®SchemaTool.php ãã¡ã€ã«ã®äŸãã¡ãœããå
ã®é å
$pkColumnsã¯gatherColumns()æŽæ°ãããŸãããèªã¿åãããããšã¯ãããŸããã
çæãããã²ãã¿ãŒãšã»ãã¿ãŒã®ã«ã¹ã¿ãã€ãº
camelCase()ãšã®
éã§éžæããããšã«ãããã¡ãœããã®åœåãã«ã¹ã¿ãã€ãºã§ããããã«ãªããŸããsnake_case()ã
ãŸããã¯ã©ã¹ã«è¿œå ãããé åºãã«ã¹ã¿ãã€ãºããŸãã
ã©ã¡ãã®ãªãã·ã§ã³ããšãã£ã¿ãŒã§äœ¿çšã§ããŸã| ã³ãŒãã¹ã¿ã€ã«| [ã³ãŒãçæ]ã¿ãã®PHPã
1ã€ã®ãŠã£ã³ããŠã§å€ãã®ãããžã§ã¯ãã®æ£ããè§£å床
1ã€ã®ãŠã£ã³ããŠã§è€æ°ã®ãããžã§ã¯ããéããšãã¯ã©ã¹ãè€æ°åå®çŸ©ãããŠãããšãããšã©ãŒã衚瀺ãããããšããããããŸãããããŠãã¯ã©ã¹ã®å®çŸ©ã«è¡ãããšãããšããããªãã¯ãŸã ã©ããéžã°ãªããã°ãªããŸããã§ããã
PhpStorm 2020.2ã«ã¯ãããã®ãã°ã¯ãªããç§»è¡ã¯æåŸ ã©ããã«æ©èœããŸãã
ãã³ããŒã®ã¯ã©ã¹ã®åªå 床ãäœã
èªåå®äºãªã¹ãã§ã¯ããããžã§ã¯ãããçŽæ¥ã¯ã©ã¹ãåªå ããããã©ã«ããŒ
vendorããã³PHARãã¡ã€ã«ã®ãšã³ãã£ãã£ã¯äœãæ¹ã«ãªããŸãã
éžæãããã¹ãŠã®è¡ã«ã«ãŒãœã«ã远å ããŸã
æ°ããã¢ã¯ã·ã§ã³ãéžæããè¡ããšã«ã±ã¢ã¬ããã远å ãã¯ãéžæããåè¡ã®æåŸã«ã«ãŒãœã«ã远å ããéžæãè§£é€ããŸããããŒâ¥â§G/ Alt + Shift + Gã§åŒã³åºãããšãã§ããŸãã
GitHubãã«ãªã¯ãšã¹ãã®å®å šãµããŒã
åºæ¬çãªãã«ãªã¯ãšã¹ãã®ãµããŒãã¯ãPhpStorm2018.3ã«ç»å ŽããŸãããããä»¥æ¥æŽæ°ããããŸããããããã§ãå€ãã®ã¢ã¯ã·ã§ã³ã§ãã©ãŠã¶ã«åãæ¿ããå¿ èŠããããŸããã
PhpStorm 2020.2ã§ã¯ããã¹ãŠã®ãã«ãªã¯ãšã¹ãäœæ¥ãIDEã§çŽæ¥å®è¡ã§ããŸããVCS
ãããã«ãªã¯ãšã¹ãã«ã¢ã¯ã»ã¹ã§ããŸã| Git |ããŒã«ããŒããããŸãã¯ãã¯ãªãã¯ããŠããã«ãªã¯ãšã¹ãã衚瀺ããŸã
Alt+7ã 1ã€ç®ã¯ãæ€çŽ¢ãšãã£ã«ã¿ãªã³ã°ã®ãªãã·ã§ã³ãå«ãå©çšå¯èœãªãªã¯ãšã¹ãã®ãªã¹ãã§ãã
ãã«ãªã¯ãšã¹ããã¯ãªãã¯ãããšãã¬ãã¥ãŒæ åœè ãã¿ã°ã倿Žããããã¡ã€ã«ãã¿ã€ã ã©ã€ã³ãªã©ã®è©³çްæ å ±ãéããŸãã
ã¬ãã¥ãŒã®å šäœã®æµãã¯ããã§è¡ãããšãã§ããŸããã¬ãã¥ãŒãéå§ããŠãªã¯ãšã¹ãããè¡ãŸãã¯ã³ãããã¬ãã«ã§å€æŽã«ã³ã¡ã³ãããã¬ãã¥ãŒãéä¿¡ããããŒãžããŸãã
CIã®çµæãå«ããã§ãã¯ã®çµæã¯ãã¿ã€ã ã©ã€ã³ã®äžã«è¡šç€ºãããŸãã
以åã¯ããã«ãªã¯ãšã¹ããããŒãžããã«ã¯ãããŒã«ã«ãã©ã³ããäœæããå¿ èŠããããŸãããä»ã§ã¯å¿ é ã§ã¯ãªãããã¿ã³ãæŒãããšã§ããŒãžã§ããŸãã
OpenAPIãµããŒã
OpenAPI仿§ ãã©ã°ã€ã³ã¯ãã¹ãŠã®JetBrainsIDEã§äœ¿çšã§ããããŒãžã§ã³2020.2以éã§æ©èœããŸããOpen API仿§ãã¡ã€ã«ïŒ
openapi.yaml/openapi.jsonããã³swagger.yaml/ swagger.jsonïŒã§ã¯ãåŒ·èª¿è¡šç€ºãæ¡åŒµãæ€èšŒãããã³ããã²ãŒã·ã§ã³ãæäŸããŸãã
ããã«ã次ã®ãªãã·ã§ã³ã䜿çšã§ããŸãã
- SwaggerUIãšã®çµ±å-IDEãŠã£ã³ããŠã§çŽæ¥ã¬ã³ããªã³ã°ããŸãã
- ã³ãŒãçæã
- OpenAPI仿§ã®æ§é äžã®éã-éèŠãªå€æŽããã°ããæ€åºã§ããŸãã
- HTTPã¯ã©ã€ã¢ã³ãã§ãªã¯ãšã¹ãããã°ããäœæããããã®ã¬ã¿ãŒã¢ã€ã³ã³ã
- HTTPã¯ã©ã€ã¢ã³ãã§ã®ãšã³ããã€ã³ãã®å®äºã
- ååã®å€æŽãªãã¡ã¯ã¿ãªã³ã°-仿§ã§ãšã³ããã€ã³ãã®ååã倿ŽãããšãHTTPã¯ã©ã€ã¢ã³ãã®èŠæ±ã§èªåçã«ååã倿ŽãããŸãã
æ°ããæ€æ»ãŠã£ãžã§ãã
ãšãã£ã¿ã®å³äžé ã«ãçŸåšã®ãã¡ã€ã«ã®åé¡ã®æ°ã瀺ããŠã£ãžã§ããã衚瀺ãããããã«ãªããŸããã
ç¢å°ã䜿çšãããšã次ã®/åã®åé¡ã«ãã°ãããžã£ã³ãã§ããŸãïŒä»¥åã¯
F2/ããŒã䜿çšããŠãããè¡ãããšãã§ããŸããShift+F2ïŒã
ãŠã£ãžã§ããã§ã¯ã衚瀺ããåé¡ã®ã¬ãã«ãéžæã§ããŸããããšãã°ãæ§æãšã©ãŒã®ã¿ãŸãã¯ãã¹ãŠã®åé¡ã§ãã
ãŠã£ãžã§ãããã¯ãªãã¯ãããšãæ°ããåé¡ãŠã£ã³ããŠãéãããã¡ã€ã«å ã§æ€åºããããã¹ãŠã®åé¡ã®ãªã¹ãã衚瀺ãããŸãã
ããŒãžã§ã³ç®¡ç
WSL2ããã®Git
PhpStormã¯ãWSLGitãã€ããªã䜿çšã§ããããã«ãªããŸãããããã«ãIDEèªäœããWSLãã€ã³ã¹ããŒã«ãããŠãããã©ãããããã³Gitãã€ã³ã¹ããŒã«ãããŠãããã©ãããå€å¥ããŸãã
èšå®ã¯[èšå®] | [èšå®]ã§å©çšã§ããŸã ããŒãžã§ã³ã³ã³ãããŒã«| Gitã
ïžWSL1ã®Gitã¯äžå®å®ã§ãããGitã³ãã³ãã®çµæãæ£ãããªãå¯èœæ§ããããããGitã¯WSL2ã§ã®ã¿æ©èœããŸãã
ãã©ã³ããæ¯èŒããããã®æ¹åãããUI
PhpStormã䜿çšãããšãä»»æã®ãã©ã³ããæ¯èŒããŠãã©ã¡ãã®ã³ããããè¡ããããã確èªã§ããŸãããããè¡ãã«ã¯ãVCSãããã¢ããã§äœ¿çšå¯èœãªãã©ã³ãããä»»æã®ãã©ã³ããéžæããŸã| åå²ããã³ã³ããã¹ãã¡ãã¥ãŒãã[çŸåšãšæ¯èŒ]ãéžæããŸãã
PhpStorm 2020.2ã§ã¯ããã°ãšã³ãããã®éãããšãã£ã¿ãŒã«çŽæ¥è¡šç€ºãããŸããããã«ãããããå€ãã®æ å ±ãç»é¢ã«è¡šç€ºã§ããŸãã
æŽæ°ãããã³ãã³ããã€ã¢ãã°
Git MergeãPullãããã³Rebaseã³ãã³ãã®ãã€ã¢ãã°ãåèšèšãããçµ±åãããŸãããäžè¶³ããŠãããªãã·ã§ã³ã远å ãããå®è¡ãããå®å šãªGitã³ãã³ãã確èªã§ããããã«ãªããŸããã
ãã¹ãŠã®ã³ãã³ãã¯VCSã§å©çšã§ããŸã| Gitã
æ°ããã¢ã¯ã·ã§ã³ïŒã³ããããåé€
远å ãŸãã¯äžæçãªããŒã«ã«ã³ãããããPhpStormã®ãã°ããçŽæ¥åé€ã§ããããã«ãªããŸããããããè¡ãã«ã¯ãã³ãããã®ã³ã³ããã¹ãã¡ãã¥ãŒãã[ã³ãããã®åé€]ãéžæããŸãã
æ°ããã¢ã¯ã·ã§ã³ïŒã³ãããã1ã€ã«ããŒãžïŒã¹ã«ãã·ã¥ïŒ
è€æ°ã®ã³ãããã1ã€ã«çµåããããšãã§ããŸããããšãã°ããã«ãªã¯ãšã¹ããäœæããåããŸãã¯å€æŽãããã·ã¥ããåã«å±¥æŽãã¯ãªã¢ãããšäŸ¿å©ãªå ŽåããããŸãã
ãã°ã§ããã€ãã®ã³ããããéžæããã³ã³ããã¹ãã¡ãã¥ãŒãã[ Squash Commits ... ]ãéžæããŸãã
ã©ã¡ãã®ã¢ã¯ã·ã§ã³ã§ããèå°è£ã§è¡ãã
git rebaseãŸãã
DBããŒã«
ç®±ããåºããŠããã«äœ¿çšã§ããPhpStormã«ã¯ãååã«ããDataGrip2020.2ãªãªãŒã¹ã®æŠèŠã§ã«ããŒãããŠããã»ãŒãã¹ãŠã®DataGripæ©èœãå«ãŸããŠããŸãã
ãŠã§ã
ãããŠããã€ãã®ããã«ãWebStorm2020.2ããã®ãã¹ãŠã®æŽæ°ã¯PhpStormã«ãå«ãŸããŠããŸããããšãã°ããã©ã°ã€ã³ã䜿çšãããšãPrettierãPHPãã¡ã€ã«ã®ããã©ã«ãã®ãã©ãŒããã¿ãšããŠäœ¿çšããããšãã§ããŸãã
PhpStorm 2020.2ã¯ããæ°çæ å ±ãããŒãžããããŠã³ããŒãã§ããŸãã
ãããŠãããããªãªãŒã¹ã®äž»ãªæ©èœã瀺ããããªïŒè±èªïŒã§ãïŒ
ããããã¹ãŠã®æéã§ããæåŸãŸã§èªãã§ãããŠããããšãïŒã³ã¡ã³ãã«è³ªåãåžæããã°ã¬ããŒããèãããå¯ãããã ããã°å¹žãã§ãã
JetBrainsPhpStormããŒã