๐ Study/DevOps
SourceTree๋ฅผ ์ฌ์ฉํ์ฌ Git ์ปค๋ฐ ๋ฉ์์ง๋ฅผ ์์ฑํ ๋ ์ข์ ๊ฐ์ด๋๋ผ์ธ
SourceTree๋ฅผ ์ฌ์ฉํ์ฌ Git ์ปค๋ฐ ๋ฉ์์ง๋ฅผ ์์ฑํ ๋ ์ข์ ๊ฐ์ด๋๋ผ์ธ์ ๋ฐ๋ฅด๋ฉด ํ์ ๊ณผ ์ฝ๋ ๊ด๋ฆฌ๋ฅผ ํฅ์์ํฌ ์ ์์ต๋๋ค. ์ปค๋ฐ ๋ฉ์์ง์ ๊ฐ์ด๋๋ผ์ธ์ ํ๋ก์ ํธ์ ํ์ ์ ํธ๋์ ๋ฐ๋ผ ๋ค๋ฅผ ์ ์์ง๋ง, ์๋์ ์ผ๋ฐ์ ์ผ๋ก ๊ถ์ฅ๋๋ ์ปค๋ฐ ๋ฉ์์ง ์์ฑ ๊ฐ์ด๋๋ผ์ธ์ ์ ์ํด ๋๋ฆฌ๊ฒ ์ต๋๋ค. ์ปค๋ฐ ๋ฉ์์ง๋ ๊ฐ๊ฒฐํ๊ณ ๋ช ํํ๋ฉฐ ๋ค๋ฅธ ์ฌ๋๋ค๋ ์ดํดํ ์ ์๋๋ก ์์ฑ๋์ด์ผ ํฉ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ์๋์ ๊ฐ์ ํ์์ ๋ฐ๋ฅด๋ ๊ฒ์ด ์ข์ต๋๋ค: : ์ฌ๊ธฐ์ ``์ ์ปค๋ฐ์ ์ข ๋ฅ๋ฅผ ๋ํ๋ด๋ฉฐ, ``์ ํด๋น ์ปค๋ฐ์ด ์ด๋ค ๋ณ๊ฒฝ์ ๊ฐ์ง๊ณ ์๋์ง ๊ฐ๋ตํ๊ฒ ์ค๋ช ํฉ๋๋ค. ``์ ์ปค๋ฐ์ ๋ํ ๋ ์์ธํ ๋ด์ฉ์ ์์ฑํ๋ ๋ถ๋ถ์ ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉ๋๋ ``๊ณผ ์์๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค: -feat: ์๋ก์ด ๊ธฐ๋ฅ ์ถ๊ฐ feat: ์ฌ์ฉ์ ๋ฑ๋ก ๊ธฐ๋ฅ ๊ตฌํ - f..
๋ฐ์ดํฐ๋ฒ ์ด์ค ์๊ตฌ ์ฌํญ์ ๋ฐ๋ผ AWS RDS๋ฅผ ์ ํํด์ผ ํ๋ ์ด์
AwsRDS๋? AWS RDS(Amazon Relational Database Service)๋ Amazon Web Services(AWS)์์ ์ ๊ณตํ๋ ํด๋ผ์ฐ๋ ๊ธฐ๋ฐ ๊ด๋ฆฌํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์๋น์ค์ ๋๋ค. ์ด๋ฅผ ํตํด ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฝ๊ฒ ์ค์ , ์ด์ ๋ฐ ํ์ฅํ ์ ์์ต๋๋ค. AWS RDS๋ ๋ช ๊ฐ์ง ๊ฐ๋ ฅํ ์ด์ ๋ก ๊ธฐ์ ๊ณผ ๊ฐ๋ฐ์์๊ฒ ์ธ๊ธฐ ์๋ ์ ํ์ ๋๋ค. ์ด ๋ธ๋ก๊ทธ ๊ฒ์๋ฌผ์์๋ AWS RDS๊ฐ ํด๋ผ์ฐ๋์์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ด๋ฆฌํ๊ธฐ ์ํ ์ต๊ณ ์ ์๋ฃจ์ ์ธ ์ด์ ๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค. ๊ด๋ฆฌ ์๋น์ค AWS RDS๋ฅผ ์ ํํ๋ ์ฃผ๋ ์ด์ ์ค ํ๋๋ ์์ ๊ด๋ฆฌํ ์๋น์ค๋ผ๋ ๊ฒ์ ๋๋ค. AWS๋ ๋ฐฑ์ , ์ํํธ์จ์ด ํจ์น, ๋ชจ๋ํฐ๋ง ๋ฐ ํ๋์จ์ด ํ๋ก๋น์ ๋๊ณผ ๊ฐ์ ์ผ์์ ์ธ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ ์ ์ฒ๋ฆฌํฉ๋๋ค. ์ด๋ฅผ ํตํด ํ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ..
Git Flow
Branch main ์ด์ ํ๊ฒฝ์ ๋ธ๋์น์ ๋๋ค. merge์ CI/CD์ ์ํด ํ ์คํธ ์คํ ๋ฐ ์ด์ ํ๊ฒฝ์ ๋ฐฐํฌ๋ฉ๋๋ค. develop ๊ฐ๋ฐ ํ๊ฒฝ์ ๋ธ๋์น์ ๋๋ค. main ๋ธ๋์น๋ก๋ถํฐ ์์ฑ๋ฉ๋๋ค. release์ mergeํฉ๋๋ค. merge์ CI/CD์ ์ํด ํ ์คํธ ์คํ ๋ฐ ๊ฐ๋ฐ ํ๊ฒฝ์ ๋ฐฐํฌ๋ฉ๋๋ค. release/** ๋ค์ ์ถ์๋ฅผ ์ค๋นํ ๋ ์์ฑํ๋ ๋ธ๋์น์ ๋๋ค. develop ๋ธ๋์น๋ก๋ถํฐ ์์ฑ๋ฉ๋๋ค. main, develop์ mergeํฉ๋๋ค. hotfix/** ๊ธด๊ธ ์์ ์ฌํญ์ด ์๊ฒผ์ ๋ ์ฌ์ฉํ๋ ๋ธ๋์น์ ๋๋ค. main ๋ธ๋์น๋ก๋ถํฐ ์์ฑ๋ฉ๋๋ค. main, develop(๋๋ release)์ mergeํฉ๋๋ค. feature/** ์๋ก์ด ๊ธฐ๋ฅ ์ถ๊ฐ/๊ฐ๋ฐํ ๋ ์ฌ์ฉ๋ฉ๋๋ค. develop ๋ธ๋์น๋ก๋ถํฐ ์์ฑ..
groom IDE๋ก node๋ฐฐํฌ , DB mysql ๋ฐฐํฌํ๊ธฐ
Groom IDE์์ ์ปจํ ์ด๋ ์์ฑํ๊ธฐ git์์ ์๋ฒ ์ฝ๋๊ฐ์ ธ์ค๊ธฐ Mysql ์ฐ๊ฒฐํ๊ธฐ mysqld.cnf ์ค์ #bind-address = 127.0.0.1 ์ฃผ์ํด์ผํจ service mysql restart MySQL ๊ณ์ MySQL ๊ณ์ ์ ๊ถํ ๋ถ์ฌ use mysql; GRANT ALL PRIVILEGES ON *.* to '์ฌ์ฉ์ ๊ณ์ '@'%' IDENTIFIED BY '๋น๋ฐ๋ฒํธ'; flush privileges; select host, user, authentication_string FROM user; MySQL Workbench ์์ ์ ์ ํด๋น IP ์ธ๋ถํฌํธ๋ก ์ ๋ฐ์ดํธ ์
Git Sourcetree๋ก ์ปค๋ฐํ push ํ๋ ๋ฐฉ๋ฒ
์์ง ์ด๋ณด๋ผ git ํ์ ๋ก๊ทธ๊ฐ ์ต์ํ์ง ์์ผ๋ ์ดํด๋ถํ๋๋ฆฝ๋๋ค! ์์ ์ ํํ ์ปค๋ฐ๋ฒํผ์ ๋๋ฅธ๋ค ์ปค๋ฐ๋ฉ์์ง ์์ฑํ ์ปค๋ฐ ๋ฒํผ์ ๋๋ฅธ๋ค.! ์ปค๋ฐ์๋ฃ ์ปค๋ฐํ ์๊ฒฉ์ ์ฌ๋ฆฌ๊ธฐ์ํด์๋ push๋ฅผ ๋๋ฅธ๋ค. ์๊ธฐ๊ฐ ์ฌ๋ฆฌ๊ณ ์ถ์ ์ํ๋ ์๊ฒฉ์ ๋ธ๋์น๋ฅผ ์ ํํํ push๋ฒํผ๋๋ฌ์์ ์๊ฒฉ์ ์ฌ๋ฆฐ๋ค. ๋
Git Stash๋ ๋ฌด์์ธ๊ฐ์?
์ ๊ฐ Git stash์ ๋ํด ์ค๋ช ํด๋๋ฆฌ๊ณ ๋ธ๋ก๊ทธ ๊ธ์ ์์ฑํด๋๋ฆฌ๊ฒ ์ต๋๋ค. --- Git์ ์ฝ๋ ๋ณ๊ฒฝ ์ฌํญ์ ๊ธฐ๋กํ๊ณ ๋ฒ์ ๊ด๋ฆฌํ๋ ๋ฐ ์ฌ์ฉ๋๋ ๋ถ์ฐ ๋ฒ์ ๊ด๋ฆฌ ์์คํ ์ ๋๋ค. ์์ ์ค์๋ ๋ค๋ฅธ ๋ธ๋์น๋ก ์ ํํด์ผ ํ๊ฑฐ๋, ์์ ์ค์ธ ์ฝ๋๋ฅผ ์ปค๋ฐํ๊ธฐ์ ์ ์ ํ ์์ ์ด ์๋ ์ ์์ต๋๋ค. ์ด๋ฐ ๊ฒฝ์ฐ์ Git stash ๊ธฐ๋ฅ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. Git stash๋ ํ์ฌ ์์ ๋๋ ํ ๋ฆฌ์ ๋ณ๊ฒฝ ์ฌํญ์ ์ผ์์ ์ผ๋ก ์ ์ฅํ๊ณ , ๊นจ๋ํ ์์ ํธ๋ฆฌ๋ก ๋์๊ฐ ์ ์๊ฒ ํด์ฃผ๋ ๊ธฐ๋ฅ์ ๋๋ค. ์ด๋ฅผ ํตํด ๋ณ๊ฒฝ ์ฌํญ์ ๋ณด๊ดํ๊ณ ๋์ค์ ๋ค์ ์ ์ฉํ ์ ์์ต๋๋ค. Git stash์ ์ฌ์ฉ๋ฒ 1. ๋ณ๊ฒฝ ์ฌํญ์ ์คํ์ํ๊ธฐ ๋ณ๊ฒฝ ์ฌํญ์ด ์๋ ์์ ๋๋ ํ ๋ฆฌ์์ ๋ค์ ๋ช ๋ น์ ์คํํ์ฌ ๋ณ๊ฒฝ ์ฌํญ์ ์คํ์ํฉ๋๋ค. $git stash ์ด ๋ช ๋ น์ ํ์ฌ..
Gitaction vs Jenkins ๊ฐ๋ ๊ณผ ์ฅ๋จ์
Gitaction ์ฅ์ GitHub์์ ๊ธฐ๋ณธ ํตํฉ: GitActions๋ GitHub์์ ์์ ํ๋ฏ๋ก GitHub ๋ฆฌํฌ์งํ ๋ฆฌ ๋ฐ ์ํฌํ๋ก์ ์ํํ๊ฒ ํตํฉ๋ฉ๋๋ค. ๊ฐํธํ ์ค์ ๋ฐ ์ฌ์ฉ: GitActions์๋ ๊ฐ๋จํ๊ณ ์ง๊ด์ ์ธ ์ฌ์ฉ์ ์ธํฐํ์ด์ค๊ฐ ์์ด ์ค์ ๋ฐ ์ฌ์ฉ์ด ์ฝ์ต๋๋ค. ๋ฌด๋ฃ CI/CD ์๋น์ค ์ ๊ณต: GitActions๋ ๋งค๋ฌ ๋๋ํ ๋ฌด๋ฃ ๋น๋ ์๊ฐ์ ์ ๊ณตํ๋ฏ๋ก ์๊ท๋ชจ ํ๋ก์ ํธ์ ๋งค๋ ฅ์ ์ธ ์ต์ ์ ๋๋ค. ๋จ์ ์ ํ๋ ์ฌ์ฉ์ ์ ์: GitActions์๋ ๋ง์ ๊ธฐ๋ณธ ์ ๊ณต ์์ ์ด ์์ง๋ง ์ผ๋ถ ๋ค๋ฅธ ๋๊ตฌ๋งํผ ๋ง์ ์ฌ์ฉ์ ์ ์๋ฅผ ์ ๊ณตํ์ง ์์ ์ ์์ต๋๋ค. ์ ํ๋ ํ์ฌ ํตํฉ: GitActions๋ ํ์ฌ ๋๊ตฌ์์ ํตํฉ์ด ์ ํ๋์ด ์์ด ์ผ๋ถ ํ๋ก์ ํธ์ ๋จ์ ์ด ๋ ์ ์์ต๋๋ค. ์ ํ๋ ํ์ฅ์ฑ: GitActions๋ ..
CI/CD ๊ธฐ๋ณธ ๊ฐ๋
๊ฐ๋ ์ดํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ ๋จ๊ณ๋ถํฐ ๋ฐฐํฌ ๋๊น์ง ์ด ๋ชจ๋ ๋จ๊ณ๋ค์ ์๋ํ๋ฅผ ํตํด์ ์กฐ๊ธ ๋ ํจ์จ์ ์ด๊ณ ๋น ๋ฅด๊ฒ ์ฌ์ฉ์์๊ฒ ๋น๋ฒ์ด ๋ฐฐํฌํ ์ ์๋๋ก ๋ง๋๋ ๊ฒ์ ๋งํ๋ค. CI : Continuous Integration ์ง์์ ์ธ ํตํฉ ๋ฉ์ธ ๋ ํฌ์งํ ๋ฆฌ์ ์ฃผ๊ธฐ์ ์ผ๋ก ๋น๋๋๊ณ ํ ์คํธ๊ฐ ๋์ด์ ๋จธ์ง๋๋ ๊ฒ์ด๋ค. 1. ์ฝ๋ ๋ณ๊ฒฝ์ฌํญ์ ์ฃผ๊ธฐ์ ์ผ๋ก ๋น๋ฒํ๊ฒ ๋จธ์งํด์ผ ํ๋ค. ๋์ค์ ๋จธ์งํ๋ ค๊ณ ํ๋ฉด ์๋ก ๋ค๋ฅธ ์ฝ๋๋ฅผ ์ด๋ป๊ฒ ํตํฉํด์ ์ ์ฉํด ๋๊ฐ๊ป์ง ๋ฌธ์ ๊ฐ ๋ฐ์ ์ฝ๋๋ฅผ ์์ฑํ๋ ์๊ฐ๋ณด๋ค ๋จธ์งํ๋ ์๊ฐ์ด ๋ ์ค๋ ๊ฑธ๋ฆฌ๋ ๋ฌธ์ ๊ฐ ๋ฐ์ ์์ ๋จ์๋ก ๋๋์ด์ ํตํฉํ๋ ๊ฒ์ด ์ค์ 2. ํตํฉ์ ์ํ ๋จ๊ณ (๋น๋, ํ ์คํธ, ๋จธ์ง)์ ์๋ํ CD : Continuous Delivery(์๋) or Deployment(์๋) ์ง์์ ์ธ ์ ๊ณต ,๋ฐฐ..
[Git] ์ข์ ์ปค๋ฐ ๋ฉ์ธ์ง ์์ฑํ๊ธฐ์ํ ๊ท์น๋ค
์ข์ ์ปค๋ฐ ๋ฉ์์ง ์์ฑํ๊ธฐ ์ํ ๊ท์น๋ค ์ฝ๋๋ฅผ ์์ฑํ๋ฉด์ ์ด๋ ค์ด๊ฒ๋ค์ค ํ๋๋ ์ด๋ฆ์ ์ด๋ป๊ฒ ์ง๋์ง์ ๋ํ ๊ณ ๋ฏผ ๋ฐ๋ก`Naming` ์ผ ๊ฒ์ ๋๋ค. ํด๋์ค, ํจ์, ๋ณ์ ๋ฑ๋ฑ ๋ง์ ์ด๋ฆ์ ๊ณ ๋ฏผํ์ง๋ง ๊ทธ ์ค ํ๋์ธ ์ปค๋ฐ ๋ฉ์์ง๋ฅผ ์ด๋ป๊ฒ ์์ฑํ์ฌ์ผ ์ข์ ์ปค๋ฐ ๋ฉ์์ง์ผ์ง์ ๋ํ์ฌ ์์๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค. Commit message 7๊ฐ์ง ๊ท์น ์ ๋ชฉ๊ณผ ๋ณธ๋ฌธ์ ํ ์ค ๋์ด ๊ตฌ๋ถ ์ ๋ชฉ์ 50์ ์ด๋ด ์ ๋ชฉ ์ฒซ ๊ธ์๋ ๋๋ฌธ์ ์ ๋ชฉ ๋์ ๋ง์นจํ X ์ ๋ชฉ์ ๋ช ๋ น๋ฌธ์ผ๋ก, ๊ณผ๊ฑฐํ X ๋ณธ๋ฌธ์ ๊ฐ ํ์ 72์ ์ด๋ด (์ค๋ฐ๊ฟ ์ฌ์ฉ) ๋ณธ๋ฌธ์ ์ด๋ป๊ฒ ๋ณด๋ค ๋ฌด์์, ์์ ๋ํ์ฌ ์ค๋ช Commit message ๊ตฌ์กฐ ๊ธฐ๋ณธ์ ์ผ๋ก commit message ๋ ์ ๋ชฉ, ๋ณธ๋ฌธ, ๊ผฌ๋ฆฌ๋ง๋ก ๊ตฌ์ฑํฉ๋๋ค. ์ ๋ชฉ์ ํ์์ฌํญ์ด๋ฉฐ, ๋ณธ๋ฌธ๊ณผ ๊ผฌ๋ฆฌ๋ง์ ์ ํ์ฌํญ์ ๋๋ค..
GIt pull error
๊ฐ๋ ๊ฐ๋ค git์์ ์์ ํ๊ฑฐ๋ฅผ pull ํ ๋ ์๋ฌ๊ฐ ๋ฌ๋ค ๋ฌธ์ git์ ์ฌ์ฉํ๋ค๋ณด๋ฉด ์ฌ๋ฌ ๋ณ๊ฒฝ๋ด์ญ์ด ์๊ธฐ๊ฒ ๋ฉ๋๋ค. ์๋ฅผ ๋ค๋ฉด ๋ด ๋ก์ปฌ์์ ๋ณ๊ฒฝ๋ ๋ด์ญ์ ์์ง commit์ ํ์ง ์์ ์ํ๋ก pull์ ํ๊ฒ ๋๋ฉด, ์ถฉ๋์ด ๋ฐ์ํ๊ฒ ๋์ด ์ด๋ณด์์๊ฒ๋ ๋๊ฐํ ์ํฉ์ด ๋ฉ๋๋ค. ์ด๋ฐ ๊ฒฝ์ฐ์ git stash ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์๋ฉด ํธ๋ฆฌํฉ๋๋ค. $ git add . git stash : ์คํ ์ด์๋ก ์์ ํ๊ฒ ๋ณด๊ด $ git stash $ git pull origin branch name