์ ์ฒด ๊ธ
-
[Git] Merge vs Rebase / Fetch vs Pull ์ฐจ์ดGit 2026. 7. 7. 17:56
Git์ ์ฌ์ฉํด ํ์ ํ๋ ์ค ๋ธ๋์น๋ฅผ ํฉ์น๊ฑฐ๋ ์๊ฒฉ ์ ์ฅ์์ ์ฝ๋๋ฅผ ๊ฐ์ ธ์ฌ ๋ ์ด๋ค ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํด์ผ ํ๋์ง ๊ณ ๋ฏผ๋๋ ์๊ฐ ๐ 1. Git Rebase vs Git Merge: ๋ธ๋์น๋ฅผ ํฉ์น๋ ๋ ๊ฐ์ง ๋ฐฉ๋ฒgit rebase์ git merge์ ์ฐจ์ด์ ์ ์ค๋ช ํ๊ณ , ๊ฐ๊ฐ ์ด๋ค ์ํฉ์์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ ์ ํ์ง ์ค๋ช ํด๋ณด์ Git์์ ๋ถ๊ธฐ๋ ๋ธ๋์น๋ฅผ ํ๋๋ก ๋ณํฉํ๋ค๋ ์๋ฏธ์์๋ ๋์ผํ์ง๋ง์ด๋ป๊ฒ ์ปค๋ฐ ํ์คํ ๋ฆฌ(์ด๋ ฅ)๋ฅผ ๋จ๊ธฐ๋๋์ ๋ฐ๋ผ git merge์ git rebase๋ก ๋ค๋ฅธ ๊ฒฐ๊ณผ๋ฅผ ๋ณ๋๋ค merge๋ ๋ธ๋์น์ ๋ณ๊ฒฝ ์ฌํญ๊ณผ ํ๋ฆ ์ด๋ ฅ์ ๊ทธ๋๋ก ๋จ๊ธฐ์ง๋งrebase๋ ๋์ ๋ธ๋์น์ ์ต์ ์ปค๋ฐ ์์ ํ์ฌ ๋ธ๋์น์ ์ปค๋ฐ๋ค์ด ์์๋๋ก ์ฌ์ ์ฉ๋์ด ์ ํ ํ์คํ ๋ฆฌ๊ฐ ํ์ฑ๋๋ค ๋ฐ๋ผ์ ๋ธ๋์น์ ์ฌ์ฉ ๋ด์ญ์ ๋จ๊ฒจ๋ ํ์๊ฐ ์..
-
[Git] ์ด๋ฏธ ์ฌ๋ผ๊ฐ PR ์์ ํ๋ ๋ฐฉ๋ฒ (commit--amend, push -f)Github ๋ฒ์ ๊ด๋ฆฌ 2026. 6. 24. 09:36
์์ ์ค PR์ ์ฌ๋ ธ๋๋ฐ ์์ฐจ ์ถ์๋ ๊ฒฝํ ๐ ๐จ ๋ฌธ์ ์ํฉ@PathVariable ๋ก List๋ฅผ ๋ฐ์ผ๋ ค๊ณ ํ์ง๋ง API ๊ฒฝ๋ก๊ฐ ๋์ผํ๊ฒ ๋งคํ๋์ด “Ambiguous handler methods mapped” ์๋ฌ๊ฐ ๋ฐ์ํ๋ค์ฆ, ๋จ๊ฑด/๋ค๊ฑด ์กฐํ ๋ฉ์๋์ ๊ฒฝ๋ก๊ฐ ์ถฉ๋ํ์ฌ ์ด๋ฅผ ํด๊ฒฐํ์ง ๋ชปํ๊ณ PR์ ๋ฏธ์์ฑ์ผ๋ก ์ ์ถํ๊ฒ ๋์๋ค๋ค์ ๋ฏธ์ ์ผ๋ก ๋์ด๊ฐ์ ๋ค๋ฅธ ์๊ตฌ์ฌํญ์ ๋จผ์ ํด๊ฒฐํ ๋ค, ์ฝ๋๋ฅผ ์์ ํด๋ณด๋ ๋ฐ์ด๋๋ฆฌ ํ์ผ ์ ๋ก๋์ ์ฑ๊ณตํ์๋ค๋ฐ๋ผ์ ๊ธฐ์กด์ ์ฌ๋ฆฐ PR์ ๋ด์ฉ์ ๋ณ๊ฒฝ์ด ํ์ํ ์ํฉ์ด ๋์๋ค ๐ ํ์ฌ ์ํฉ์ ์ด๋ฏธ ๋ค์ ๋ฏธ์ ์ธ sprint5๊ฐ ๋ถ๊ธฐ๋ ์ํ์ด๋คํ์ง๋ง ์ด๋ฏธ PR์ด ์ฌ๋ผ๊ฐ sprint4 ๋ธ๋์น์ ์์ ์ด ํ์ํ๊ธฐ ๋๋ฌธ์ ์๋์ ๊ฐ์ด ํด๊ฒฐํด์ผ ํ๋ค โ ํด๊ฒฐ ๋ฐฉ๋ฒ1. ์ด์ PR์ ์ฌ๋ฆฐ sprint..
-
[Git] Atomic Commit๊ณผ ์ข์ ์ปค๋ฐ ๋ฉ์์ง ์์ฑ๋ฒGit 2026. 6. 5. 18:13
Atomic CommitAtomic commit์ ์์ง๋ง ์์ ํ ํ๋์ ๊ธฐ๋ฅ์ ํฌํจํ๋ ์ปค๋ฐ์ ์๋ฏธํ๋ค“Atomic”์ด๋ ์์์ฒ๋ผ ๋ถํ ํ ์ ์๋ ์ต์์ ๋จ์๋ผ๋ ๋ป์ ๊ฐ์ง๋ฉฐ,์ด๋ ์ปค๋ฐ๋ ๋ง์ฐฌ๊ฐ์ง๋ก ์ต์ํ์ ๋ณ๊ฒฝ ์ฌํญ๋ง์ ๋ด์์ผ ํจ์ ๋ปํ๋ค ๊ฐ๋ Atomic commit ์ ๋ต์ ํฐ ๋ณ๊ฒฝ์ฌํญ์ ์์ ๋จ์๋ก ๋ถ๋ฆฌํ์ฌ ์ปค๋ฐํ๋ ๊ฒ์ ๋งํ๋ค์ด๋ ๊ฒ ํจ์ผ๋ก์จ ๊ฐ ์ปค๋ฐ์ด ํ๋์ ์์ ํ ๋ณ๊ฒฝ์ฌํญ์ ๋ํ๋ด๊ฒ ๋๋ฉฐ,์ด๋ ์ฝ๋ ๋ฆฌ๋ทฐ๋ฅผ ์ฉ์ดํ๊ฒ ํ๊ณ ์ดํดํ๊ธฐ ์ฌ์ด ์ด๋ ฅ์ ๋ง๋ ๋ค ๋ํ Atomic commit์ ์ฌ์ฉํ๋ฉด ํน์ ๋ณ๊ฒฝ ์ฌํญ์ด ๋ฌธ์ ๋ฅผ ์ผ์ผํฌ ๊ฒฝ์ฐํด๋น ์ปค๋ฐ๋ง์ ์ฝ๊ฒ ๋๋๋ฆด ์ ์์ด ๋ฌธ์ ํด๊ฒฐ์ด ์ฉ์ดํด์ง๋ค ์์์๋ฅผ ๋ค์ด, ์๋ก์ด ๊ธฐ๋ฅ์ ์ถ๊ฐํ๊ณ ๋ฒ๊ทธ๋ฅผ ์์ ํ๋ค๊ณ ๊ฐ์ ํด๋ณด์์ด ๋ ๊ฐ์ง ๋ณ๊ฒฝ ์ฌํญ์ ํ ๋ฒ์ ์ปค๋ฐ์ ํฌํจ์ํค๋..
-
Java ๋ ์ด์ด๋ ์ํคํ ์ฒ ์ค๊ณ - Repository, Service ํจํด ์ค์ตJava ์ํคํ ์ฒ 2026. 6. 5. 10:42
์คํ๋ฆฐํธ ๋ฏธ์ 2 ๋์ค์ฝ๋ ์๋น์ค๋ฅผ ํ์ฉํด๋ณด๋ฉฐ ๊ฐ ๋๋ฉ์ธ ๋ชจ๋ธ์ ํ์ํ ์ ๋ณด๋ฅผ ๋์ถํ๊ณ ์ด๋ฅผ Java Class๋ก ๊ตฌํํด๋ณด์๋ค ๊ตฌํํ๋ฉฐ ๋ฐ์ ์ฝ๋ ๋ฆฌ๋ทฐ๋ฅผ ๋ค์๊ณผ ๊ฐ์ด ์ ๋ฆฌํ๋ค์ฝ๋ ๋ฆฌ๋ทฐ โก๏ธ ๊ฐ์ ์ฝ๋ ๐ก ํ๋ฒ ์ ์ธ๋ ํ ๋ณ๊ฒฝ๋์ง ์๋ ๊ฐ์ ์ด๋ป๊ฒ ํํํ๋ ๊ฒ ์ข์๊น?private UUID id; // ๊ฐ์ฒด ์๋ณโฌ๏ธfinal ํค์๋๋ฅผ ์ด์ฉํด ํํํ์ โผ๏ธprivate final UUID id; ๐ก PR ์ฌ๋ฆด ๋๋ ๋ถํ์ํ ๋ก๊น ์ญ์ ํด์ผ ํ๋คSystem.out.println("ESC..."); ๐ก ๊ฐ๋ ์ฑ์ด ์ข์๊ฐ?if(newType!=ChannelType.PRIVATE&&newType!=ChannelType.PUBLIC) {โฌ๏ธ๋์ด์ฐ๊ธฐ๋ก ๊ตฌ๋ถํด ์ฝ๊ธฐ ๋ ์ข๊ฒ ์์ฑํ์if(newType != Chan..
-
Basic Git Workflow : Add, CommitGit 2026. 5. 20. 17:34
Git Status ๋ช ๋ น์ดgit status ๋ช ๋ น์ด๋ Git ๋ ํฌ์งํ ๋ฆฌ์ ์ํ๋ฅผ ํ์ธํ๋๋ฐ ์ฌ์ฉ๋๋ ๋ช ๋ น์ด git status ๋ช ๋ น์ด๋ฅผ ํตํด ์ด๋ค ํ์ผ์ด ์์ ๋์๋์ง,์ด๋ค ํ์ผ์ด ์์ง ์คํ ์ด์ง๋์ง ์์๋์ง,ํ์ฌ ์ด๋ค ๋ธ๋์น์ ์์นํด ์๋์ง ๋ฑ์ ์ ๋ณด ํ์ธ ๊ฐ๋ฅ git์ ์ํด ์ถ์ ๋์ง ์์ ๋ช ๋ น์ด… ์๋ ค์ค์ฌ์ฉ๋ฒgit status ๋ช ๋ น์ด๋ฅผ ์คํํ๋ฉด ํ์ฌ ๋ ํฌ์งํ ๋ฆฌ์ ์ํ ์ถ๋ ฅgit status ์์ ๊ฐ์ ๋ช ๋ น์ด๋ฅผ ์คํํ๋ฉด Git์ ์๋์ ๊ฐ์ ์ข ๋ฅ์ ์ ๋ณด๋ฅผ ์ถ๋ ฅํ์ฌ ์ฒดํฌ์์๋ ๋ธ๋์น ์ด๋ฆ์คํ ์ด์ง ์์ญ์ ์ถ๊ฐ๋ ํ์ผ (Changes to be committed)์คํ ์ด์ง ์์ญ์ ์ถ๊ฐ๋์ง ์์ ์์ ๋ ํ์ผ๋ค (Changes not staged for commit)Git์ ์ํด ์ถ์ ๋์ง ์๋ ์๋ก์ด ํ์ผ๋ค (Unt..
-
Git RepositoryGit 2026. 5. 20. 16:17
Git RepositoryGit Repository(๋ ํฌ์งํ ๋ฆฌ)๋ Git์ ์ํด ๊ด๋ฆฌ๋๋ ํ๋ก์ ํธ ๋๋ ํฐ๋ฆฌ๋ ํฌ์งํ ๋ฆฌ ์์๋ ํ๋ก์ ํธ์ ๋ชจ๋ ํ์ผ๊ณผ ๊ฐ ํ์ผ์ ์์ ์ด๋ ฅ์ ๋ด์ ์ ๋ณด ํฌํจ๋ ํฌ์งํ ๋ฆฌ๋ฅผ ํตํด Git์ ํ๋ก์ ํธ์ ์ํ๋ฅผ ํน์ ์์ ์ผ๋ก ๋๋๋ฆด ์ ์๊ฑฐ๋, ๋ณ๊ฒฝ ์ด๋ ฅ์ ์กฐํํ๊ฑฐ๋, ๋ค๋ฅธ ๋ธ๋์น๋ก ์ ํํ๋ ๋ฑ์ ์์ ์ํ ๋ ํฌ์งํ ๋ฆฌ์ ์ฃผ์ ์์Working Directory: ํ์ฌ ์์ ์ค์ธ ํ๋ก์ ํธ์ ํ์ผ๋ค์ด ์์นํ๋ ๋๋ ํฐ๋ฆฌStaging Area(Indedx): ์ปค๋ฐํ๊ธฐ ์ํด ์ ํํ ํ์ผ๋ค์ ์ ๋ณด๋ฅผ ์ ์ฅํ๋ ์์ญ, ์ด ์์ญ์ ํตํด ์ํ๋ ํ์ผ๋ค๋ง์ ์ปค๋ฐ์ ํฌํจ ์ํค๋ ๊ฒ์ด ๊ฐ๋ฅ.git Directory(Repository): Git์ ๋ฉํ๋ฐ์ดํฐ์ ๊ฐ์ฒด ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ ์ฅํ๋ ๋๋ ํฐ๋ฆฌ, ์ด ๋๋ ํฐ๋ฆฌ..
-
๊ธฐ๋ณธ ํฐ๋ฏธ๋ ๋ช ๋ น์ดGit 2026. 5. 20. 15:13
๊ฐ๋จํ ๋ฆฌ๋ ์ค ๋ช ๋ น์ดls : ํ์ ํด๋, ํ์ผ ๋ณด๊ธฐls -l (ll) : ํ์ ํด๋, ํ์ผ ์์ธํ ๋ณด๊ธฐpwd : ํ์ฌ ์์นํ ํด๋ ์ถ๋ ฅcd : ์ํ๋ ๊ฒฝ๋ก๋ก ์ด๋mkdir ํด๋๋ช : ์ ๋๋ ํ ๋ฆฌ ์์ฑrm -rf ํด๋, ํ์ผ : ํด๋, ํ์ผ ์ญ์ pwd: ํ์ฌ ์์นํ ๋๋ ํ ๋ฆฌ ๊ฒฝ๋ก ์ถ๋ ฅpwd๋ print working directory์ ์ฝ์ด๋ก ํ์ฌ ๋ด๊ฐ ๋ณด๊ณ ์๋ ํด๋์ ๊ฒฝ๋ก๋ฅผ ์๋ ค์ค( ์ฐธ๊ณ ) '~' ์ ๋ฃจํธ ๋๋ ํ ๋ฆฌ๋ก ๋ณดํต ์ฌ์ฉ์ ๊ณ์ ๊ฒฝ๋ก๊ฐ ์ง์ ๋จ ls: ํ์ฌ ์์นํ ๋๋ ํ ๋ฆฌ ์์ ์๋ ํด๋์ ํ์ผ ๋ชฉ๋ก ๋ณด๊ธฐls๋ list์ ์ฝ์ด์ด๋ฉฐ ํ์ฌ ์์นํ ํด๋ ๋ด๋ถ์ ์๋ ํ์ํด๋, ํ์ผ๋ค์ ์ ๋ณด ์ถ๋ ฅ ls -l: ls ๋ช ๋ น์ด ๋ค์ -l ์ต์ ์ ์ฃผ๋ฉด ๊ถํ ๊ฐ์ ์์ธํ ์ ๋ณด ํ์ ls -a: -a ์ต์ ์ ..
-
Git IntroGit 2026. 5. 9. 13:58
#What is Git? Git๊ณผ ๋ฒ์ ๊ด๋ฆฌ ์์คํ (Version Control System) Git์ด๋? Git์ ์ํํธ์จ์ด ๊ฐ๋ฐ์์ ์ฌ์ฉ๋๋ ๋ถ์ฐ ๋ฒ์ ๊ด๋ฆฌ ์์คํ (Distributed Version Control System, DVCS) ์ค ํ๋๋ฆฌ๋์ค ํ ๋ฐ์ฆ(Linus Torvalds)๊ฐ ๊ฐ๋ฐํ์์ผ๋ฉฐ, ์ํํธ์จ์ด ๊ฐ๋ฐ์์ ์์ค ์ฝ๋ ๊ด๋ฆฌ์ ์ฃผ๋ก ์ฌ์ฉGit์ ์ฃผ์ ๋ชฉํ๋ ์๋, ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ, ๊ทธ๋ฆฌ๊ณ ๋ถ์ฐ ์์คํ ์ ์ง์์ ์ํ ์์ ํ ๋ถ์ฐ์ ํฌํจํด ๋น์ ํ ์์ ํ๋ฆ์ ์ง์ํ๋ ๊ฒ ๋ฒ์ ๊ด๋ฆฌ ์์คํ (Version Control System, VCS)์ด๋? ๋ฒ์ ๊ด๋ฆฌ ์์คํ (VCS)์ ์๊ฐ์ ๋ฐ๋ผ ๋ฌธ์๋ ์์ค ์ฝ๋์ ๊ฐ์ ์ ๋ณด์ ๋ณํ๋ฅผ ๊ธฐ๋กํ๊ณ , ํน์ ์์ ์ ๋ฒ์ ์ ๋ค์ ๋ถ๋ฌ์ฌ ์ ์๋ ์์คํ ์ด๋ฐ ์์คํ ..
-
browser์ ๋์์น ํ๋ก๊ทธ๋๋ฐ(ํ์คํ) 2026. 4. 29. 16:33
๐๐ฟโ๏ธ ๋ค์ด๊ฐ๊ธฐ ์ … ์น์ ํตํด ์ ๋ฌ๋๋ ๋ฐ์ดํฐ๋ ์ด๋๊ฐ์์ ํด์๋์ด์ผ ํจ์๋ฒ์์ ์ ์กํ ๋ฐ์ดํฐ(HTML๊ณผ ๊ฐ์)๊ฐ ํด๋ผ์ด์ธํธ์ ๋์ฐฉํด์ผ ํ ๊ณณ์ ‘Browser’Browser์๋ ๋ฐ์ดํฐ๋ฅผ ํด์ํด์ฃผ๋ ํ์์ ๋ฐ์ดํฐ๋ฅผ ํ๋ฉด์ ํํํด์ฃผ๋ ๋ ๋๋ง์์ง์ด ํฌํจ๋์ด ์์์ด๋ฐ ์์ ์ ๋๋ถ๋ถ์ ๋ธ๋ผ์ฐ์ ๋ด๋ถ์์ ์ด๋ค์ง๊ธฐ ๋๋ฌธ์ ๋ฐ๋์ ์์์ผ ํ๋ ๊ฒ์ ์๋ํ์ง๋ง ๋ธ๋ผ์ฐ์ ์ ๋ด๋ถ๋ฅผ ์ดํดํ๋ฉด ์น ๊ฐ๋ฐ์ ํ๋ฉด์ ๋ง๋ฅ๋จ๋ฆฌ๋ ๋ํดํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๊ณ , ๋ณด๋ค ์ต์ ํ๋ ์น๊ฐ๋ฐ์ ํ ์ ์์ ํ์ต ๋ชฉํHTMLํ์ผ์ด ์ฌ ๋ ๋ธ๋ผ์ฐ์ ๊ฐ ์ด๋ป๊ฒ ๋ ๋๋ง๊ณผ์ ์ ๊ฑฐ์ณ์ ํ๋ฉด์ ๋ณด์ด๊ฒ ๋๋์ง ๊ฐ๋จํ ์ดํด ํต์ฌ ๊ฐ๋ Web Browser Rendering ๐ ํ์ต๋ด์ฉ(์ฐธ๊ณ ) ๋ธ๋ผ์ฐ์ ์ ์ํ๋ฉด ์์ค ๋ณด๊ธฐ ๊ฐ๋ฅ๋ธ๋ผ์ฐ์ ๋ค์ด ์์์ ํด๊ฒฐ..