๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Git,Github

[Git]์›๊ฒฉ ๋ธŒ๋žœ์น˜ ์ •๋ณด ๊ฐ€์ ธ์˜ค๊ธฐ/git fetch/ํŽ˜์น˜/๋ธŒ๋žœ์น˜ ๋ณ‘ํ•ฉ/FETCH-HEAD

by ์šฐ์ฃผ๋ฌผ๊ณ ๊ธฐ 2025. 5. 4.
๋ฐ˜์‘ํ˜•

์›๊ฒฉ master ๋ธŒ๋žœ์น˜

**์›๊ฒฉ ์ €์žฅ์†Œ์— ์žˆ๋Š” ๋ธŒ๋žœ์น˜ --> ์›๊ฒฉ ๋ธŒ๋žœ์น˜

**์›๊ฒฉ ์ €์žฅ์†Œ์— ์žˆ๋Š” master ๋ธŒ๋žœ์น˜ --> ์›๊ฒฉ master ๋ธŒ๋žœ์น˜

๋กœ ๋ถ€๋ฅด๊ฒ ์Œ

 

 

1. ๊นƒํ—ˆ๋ธŒ์—์„œ ์ž‘์—…ํ•˜๋˜ ์ €์žฅ์†Œ๋กœ ์ ‘์† ํ›„, ๋งˆ์ง€๋ง‰ ์ปค๋ฐ‹ ํ™•์ธ

* ์ฑ…๋Œ€๋กœ ํ–ˆ๋‹ค๋ฉด ๋งˆ์ง€๋ง‰ ์ปค๋ฐ‹์€ 'add d'

โ€‹

์—ฌ๊ธฐ์„œ ์›๊ฒฉ ์ €์žฅ์†Œ์˜ HEAD๋Š” ์›๊ฒฉ ์ €์ž์†Œ์˜ master ๋ธŒ๋žœ์น˜๋ฅผ ๊ฐ€๋ฆฌํ‚ค๊ณ ,

์›๊ฒฉ master ๋ธŒ๋žœ์น˜๋Š” 'add d'๋ผ๋Š” ์ตœ์ข… ์ปค๋ฐ‹ ๊ฐ€๋ฆฌํ‚ค๊ณ  ์žˆ์Œ

โ€‹

โ€‹

2. git_home ๋””๋ ‰ํ† ๋ฆฌ์—์„œ git log๋กœ ์ปค๋ฐ‹ ์ƒํƒœ ํ™•์ธ

$ cd ~/git_home $ git log --oneline

HEAD -> main : ์ด ์ปค๋ฐ‹์ด ์ง€์—ญ ์ €์žฅ์†Œ์˜ ์ตœ์ข… ์ปค๋ฐ‹์ด๋ผ๋Š” ๋œป

origin/main : ์›๊ฒฉ ์ €์žฅ์†Œ์˜ ์ตœ์ข… ์ปค๋ฐ‹์ด๋ผ๋Š” ๋œป

โ€‹

์•„์ง git_home ๋””๋ ‰ํ† ๋ฆฌ๋Š” ์›๊ฒฉ ์ €์žฅ์†Œ๋ฅผ ๋ณต์ œ(clone)ํ•œ ์ƒํƒœ ๊ทธ๋Œ€๋กœ๊ธฐ ๋•Œ๋ฌธ์— (์ „ ํฌ์ŠคํŒ… ์ฐธ๊ณ ),

์ง€์—ญ ์ €์žฅ์†Œ์™€ ์›๊ฒฉ ์ €์žฅ์†Œ ๋ชจ๋‘ ์ตœ์ข… ์ปค๋ฐ‹ ๊ฐ™์Œ

โ€‹

โ€‹

3. git_home์— ๊ฐ„๋‹จํ•œ ํ…์ŠคํŠธ ํŒŒ์ผ ์ƒ์„ฑ + ์Šคํ…Œ์ด์ง€์— ์˜ฌ๋ฆฐ ํ›„ ์ปค๋ฐ‹

์•„์ง push๋Š” ํ•˜์ง€ ์•Š์Œ

โ€‹

โ€‹

โ€‹

โ€‹

4. git log --oneline ๋ช…๋ น์„ ์‚ฌ์šฉํ•ด ์ปค๋ฐ‹ ๋กœ๊ทธ ํ™•์ธ

HEAD -> main : ๋ฐฉ๊ธˆ ์ปค๋ฐ‹ํ•œ f3.txt๋ฅผ ๊ฐ€๋ฆฌํ‚ด = ์ง€์—ญ ์ €์žฅ์†Œ์˜ ์ตœ์ข… ์ปค๋ฐ‹์ด f3.txt๋ผ๋Š” ๋œป

origin.main, origin/HEAD : ์•„์ง 'add d' ์ปค๋ฐ‹ ๊ฐ€๋ฆฌํ‚ค๊ณ  ์žˆ์Œ

โ€‹

โ€‹

โ€‹

5. git status ๋ช…๋ น์–ด

ํ˜„์žฌ master ๋ธŒ๋žœ์น˜๊ฐ€ origin์— ์žˆ๋Š” ์›๊ฒฉ master ๋ธŒ๋žœ์น˜์˜ ๋ฒ„์ „๋ณด๋‹ค ํ•˜๋‚˜ ์•ž์„œ ์žˆ๋‹ค๊ณ  ์•Œ๋ ค์คŒ.

git push ๋ช…๋ น์œผ๋กœ ์›๊ฒฉ ์ €์žฅ์†Œ๋กœ ์˜ฌ๋ฆฌ๋ผ๊ณ  ์•Œ๋ ค์ฃผ๋Š” ์ค‘

โ€‹

โ€‹

โ€‹

6. git push ๋ช…๋ น์œผ๋กœ f3.txt์ปค๋ฐ‹ ์›๊ฒฉ ์ €์žฅ์†Œ๋กœ ์˜ฌ๋ฆฌ๊ณ  ๋กœ๊ทธ ํ™•์ธ

push ํ›„์—๋Š” master๊ณผ origin/master ๋ธŒ๋žœ์น˜๊ฐ€ ๊ฐ™์€ ์ปค๋ฐ‹์„ ๊ฐ€๋ฆฌํ‚ค๋Š” ๊ฒƒ ํ™•์ธ ๊ฐ€๋Šฅ

โ€‹

โ€‹

โ€‹

โ€‹

โ€‹


โ€‹

์›๊ฒฉ ๋ธŒ๋žœ์น˜ ์ •๋ณด ๊ฐ€์ ธ์˜ค๊ธฐ -git fetch

โ€‹

**pull ๋ช…๋ น์€ ์›๊ฒฉ ์ €์žฅ์†Œ์˜ ์ปค๋ฐ‹์„ ๊ฐ€์ ธ์™€์„œ ๋ฌด์กฐ๊ฑด ์ง€์—ญ ์ €์žฅ์†Œ์™€ ํ•ฉ์นจ

**fetch ๋ช…๋ น์€ ์›๊ฒฉ ๋ธŒ๋žœ์น˜์— ์–ด๋–ค ๋ณ€ํ™”๊ฐ€ ์žˆ๋Š”์ง€ ๊ทธ ์ •๋ณด๋งŒ ๊ฐ€์ ธ์˜ด

โ€‹

1. git_office ๋””๋ ‰ํ† ๋ฆฌ๋กœ ์ด๋™ ํ›„, git fetch ๋ช…๋ น

$ cd ~/git_office $ git fetch

๋ญ”๊ฐ€๋ฅผ ๊ฐ€์ ธ์˜ด..

โ€‹

โ€‹

โ€‹

2. ls -al ๋ช…๋ น์œผ๋กœ ์–ด๋–ค ํŒŒ์ผ์ด ์ƒ๊ฒผ๋Š”์ง€ ํ™•์ธ

์•„๊นŒ git_home ์—์„œ pushํ–ˆ๋˜ f3.txtํŒŒ์ผ์ด ๋ณด์ด์ง€ ์•Š์Œ

โ€‹

โ€‹

โ€‹

3. git log ๋ช…๋ น์œผ๋กœ ์‚ดํŽด๋ณด๊ธฐ

f3.txt ํŒŒ์ผ์ด ๋ณด์ด์ง€ ์•Š์•˜๋˜ ์ด์œ ?

-> ์›๊ฒฉ ์ €์žฅ์†Œ์˜ ์ตœ์‹  ์ปค๋ฐ‹ "์ •๋ณด"๋งŒ ๊ฐ€์ ธ์˜ค๊ณ , ์•„์ง ์ง€์—ญ ์ €์žฅ์†Œ์— ํ•ฉ์น˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ

HEAD -> main์ด ์—ฌ์ „ํžˆ add d์ปค๋ฐ‹ ๊ฐ€๋ฆฌํ‚ค๊ณ  ์žˆ์Œ

โ€‹

โ€‹

โ€‹

โ€‹

4. git status๋ช…๋ น์œผ๋กœ ์ƒํƒœ ํ™•์ธํ•ด๋ณด๊ธฐ

ํ˜„์žฌ ๋ธŒ๋žœ์น˜๊ฐ€ origin/main์— ๋น„ํ•ด 1๊ฐœ์˜ ์ปค๋ฐ‹์ด ๋’ค์ณ์ ธ ์žˆ๋‹ค๊ณ  ๋‚˜์˜ด

--> ์›๊ฒฉ ์ €์žฅ์†Œ์˜ ์ตœ์‹  ์ปค๋ฐ‹ ํ•˜๋‚˜๊ฐ€ ์•„์ง ์ง€์—ญ ์ €์žฅ์†Œ์— ๋ฐ˜์˜๋˜์ง€ ์•Š์•˜๋‹ค๋Š” ๋œป

โ€‹

**fetch๋กœ ๊ฐ€์ ธ์˜จ ์ •๋ณด๋Š” ์–ด๋””์—?

->origin/main ๋ธŒ๋žœ์น˜๊ฐ€ ์•„๋‹Œ FETCH_HEAD ๋ธŒ๋žœ์น˜๋กœ ๊ฐ€์ ธ์˜ด

+ ์ด ๋ธŒ๋žœ์น˜๋กœ ๊ฐ€์ ธ์˜จ ์ •๋ณด๋Š” ์ง€์—ญ ์ €์žฅ์†Œ์— ๋ฐ”๋กœ ๋ฐ˜์˜๋˜์ง€ ์•Š์Œ

โ€‹

โ€‹

โ€‹

โ€‹

5. FETCH_HEAD ๋ธŒ๋žœ์น˜๋กœ ์ฒดํฌ์•„์›ƒํ•ด์„œ ํ™•์ธ

โ€‹

โ€‹

โ€‹

6. git log ๋ช…๋ น์œผ๋กœ ํ™•์ธ

์ตœ์‹  ์ปค๋ฐ‹์— origin/main๊ณผ origin/HEAD๊ฐ€ ํ‘œ์‹œ๋˜์–ด ์žˆ์Œ

= ์ด ์ปค๋ฐ‹์ด ํŽ˜์น˜๋กœ ๊ฐ€์ ธ์˜จ ์›๊ฒฉ ๋ธŒ๋žœ์น˜์˜ ์ตœ์‹  ์ปค๋ฐ‹์ด๋‹ค.

โ€‹

โ€‹

โ€‹

7. fetch ํ›„ ์ตœ์‹  ์ปค๋ฐ‹์„ ํ˜„์žฌ ๋ธŒ๋žœ์น˜์— ํ•ฉ์น˜๊ธฐ

$ git checkout main $ git merge FETCH_HEAD

*git pull๋ช…๋ น ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ๊ณ , git merge ๋ช…๋ น์œผ๋กœ ์ปค๋ฐ‹ ๋ณ‘ํ•ฉํ•  ์ˆ˜๋„ ์žˆ์Œ

โ€‹

์—ฌ๊ธฐ์„  mergeํ•˜๋Š” ๋ฐฉ๋ฒ• ์„ ํƒ

โ€‹

โ€‹

โ€‹

8. git log๋กœ ํ™•์ธ

create f3.txt ์ปค๋ฐ‹ ์ž˜ ๋“ค์–ด์™€์žˆ์Œ

โ€‹

โ€‹

โ€‹

โ€‹

โ€‹

โ€‹

โ€‹

โ€‹

โ€‹

โ€‹

โ€‹

**main๊ณผ master ์ฐจ์ด๊ฐ€ ๋ญ”์ง€ ๊ถ๊ธˆํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ..

๊ฒฐ๋ก ๋งŒ ๋งํ•˜์ž๋ฉด ๋‘˜์ด ๋™์ผํ•œ ๊ฒƒ์œผ๋กœ ์“ฐ์ด๋Š” ๋“ฏ

์›๋ž˜๋Š” master์˜€๋Š”๋ฐ ์–ด๊ฐ ๋ฌธ์ œ์ธ์ง€ ๋ญ”์ง€ main์œผ๋กœ ๋ฐ”๊ผ‡๋‹ค๊ณ  ํ•˜๋”๋ผ๊ตฌ์š”?

โ€‹

์ฑ…์—๋Š” master๋ผ๊ณ  ๋ญ๋“ ๊ฒŒ ์„ค๋ช…๋˜์–ด์žˆ๋Š”๋ฐ

์ „๋ถ€ main์œผ๋กœ ๋ฐ”๊ฟ”์„œ ํ•˜๋ฉด ๋ฌธ์ œ ์—†์œผ์š”

๋ฐ˜์‘ํ˜•