Skip to content

Latest commit

ย 

History

History
37 lines (23 loc) ยท 2.44 KB

File metadata and controls

37 lines (23 loc) ยท 2.44 KB

Git Fetch์™€ Git Pull ๋ช…๋ น์–ด์˜ ์ฐจ์ด์ 

์ธ๋ณด์—ฐ (Bo Yeon Ihn) ๋ฒˆ์—ญ

๊ฐ•์•„์ง€๊ฐ€ ๋ฌผ ์†์—์„œ ๋ง‰๋Œ€๊ธฐ๋ฅผ ๊ฐ€์ ธ์˜ค๋ฉด์„œ fetch ๋†€์ดํ•˜๋Š” ๋ชจ์Šต

์˜์–ด ์›๋ฌธ: Git Fetch vs Pull: What's the Difference Between the Git Fetch and Git Pull Commands?

Git pull๊ณผ fetch๋Š” Git ์‚ฌ์šฉ์ž๊ฐ€ ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๋ช…๋ น์–ด์ž…๋‹ˆ๋‹ค. ์ด ๊ธฐ์‚ฌ์—์„œ๋Š” ๋‘ ๋ช…๋ น์–ด์˜ ์ฐจ์ด์ ์„ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

pull๊ณผ fetch ๋ช…๋ น์€ ํด๋ก  ์ €์žฅ์†Œ(clone repo)์—์„œ ์ž‘์—…ํ•  ๋•Œ ์‚ฌ์šฉํ•  ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์Šต๋‹ˆ๋‹ค. ํด๋ก  ์ €์žฅ์†Œ๋Š” ๊ธฐ์กด ์ €์žฅ์†Œ๋ฅผ ๋ณต์ œํ•œ ์ €์žฅ์†Œ์ด๋ฉฐ, ๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ์†Œ์Šค ์ฝ”๋“œ์˜ ๋ณต์‚ฌ๋ณธ์„ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๊ธฐ์กด ์ €์žฅ์†Œ์— ์ ์šฉ๋œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ํด๋ก  ์ €์žฅ์†Œ๋กœ ์—…๋ฐ์ดํŠธํ•˜๋ ค๋ฉด ํ•ด๋‹น ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ํด๋ก  ์ €์žฅ์†Œ๋กœ ๊ฐ€์ ธ์™€์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด๋•Œ fetch์™€ pull ๋ช…๋ น์–ด๊ฐ€ ๋งค์šฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

git fetch๋Š” ๋กœ์ปฌ Git์— ๊ธฐ์กด ์›๊ฒฉ ์ €์žฅ์†Œ์—์„œ ์ตœ์‹  ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ์ •๋ณด๋ฅผ ํ™•์ธํ•˜๋„๋ก ์ง€์‹œํ•˜๋Š” ๋ช…๋ น์ž…๋‹ˆ๋‹ค. fetch๋Š” ์›๊ฒฉ ์ €์žฅ์†Œ์— ๋ณ€๊ฒฝ์‚ฌํ•ญ์ด ์žˆ๋Š”์ง€ ํ™•์ธ๋งŒ ํ•˜๊ณ  ๋ณ€๊ฒฝ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋กœ์ปฌ Git์— ๊ฐ€์ ธ์˜ค์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋ฐ˜๋ฉด git pull์€ ์›๊ฒฉ ์ €์žฅ์†Œ์—์„œ ๋ณ€๊ฒฝ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋กœ์ปฌ Git์— ๊ฐ€์ ธ์˜ค๊ณ  ๋ณต์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๋‹ค์Œ์€ pull ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜๋Š” ์˜ˆ์‹œ ๊ตฌ๋ฌธ์ž…๋‹ˆ๋‹ค:

git pull origin ankur bugfix

์—ฌ๊ธฐ์„œ ๊ธฐ์–ตํ•ด์•ผ ํ•  ๊ฒƒ์€ ์ผ๋ฐ˜์ ์œผ๋กœ ์›Œํฌ์Šคํ…Œ์ด์…˜์— ํ”„๋กœ์ ํŠธ ๋ณต์‚ฌ๋ณธ์ด ์„ธ ๊ฐœ ์ด์ƒ ์žˆ๋‹ค๋Š” ์ ์ž…๋‹ˆ๋‹ค.

  • ์ฒซ ๋ฒˆ์งธ ๋ณต์‚ฌ๋ณธ์€ ์‚ฌ์šฉ์ž์˜ ์ปค๋ฐ‹ ๊ธฐ๋ก์ด ์žˆ๋Š” ์‚ฌ์šฉ์ž์˜ ์ €์žฅ์†Œ์ž…๋‹ˆ๋‹ค (๋‹ค์‹œ ๋งํ•ด, ์ด๋ฏธ ์ €์žฅ์ด ๋œ ์ €์žฅ์†Œ).
  • ๋‘ ๋ฒˆ์งธ ๋ณต์‚ฌ๋ณธ์€ ํŽธ์ง‘ ๋ฐ ์ž‘์„ฑ ์ค‘์ด์ง€๋งŒ ์‚ฌ์šฉ์ž ์ €์žฅ์†Œ์— ์•„์ง ์ปค๋ฐ‹๋˜์ง€ ์•Š์€ ๋ณต์‚ฌ๋ณธ์ž…๋‹ˆ๋‹ค.
  • ์„ธ ๋ฒˆ์งธ ๋ณต์‚ฌ๋ณธ์€ ์›๊ฒฉ ์ €์žฅ์†Œ์˜ ๋กœ์ปฌ์— "์บ์‹œ๋œ (cached)" ๋ณต์‚ฌ๋ณธ์ž…๋‹ˆ๋‹ค(๋ณต์ œ๋œ ์›๋ณธ์ผ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์Šต๋‹ˆ๋‹ค).

git fetch๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋งˆ์ง€๋ง‰ pull ์ดํ›„ ์›๊ฒฉ ์ €์žฅ์†Œ ๋˜๋Š” ๋ธŒ๋žœ์น˜์— ์ ์šฉ๋œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. pull์„ ์‹คํ–‰ํ•˜๋ฉด ํ˜„์žฌ ๋ธŒ๋žœ์น˜์™€ ์ž‘์—… ๋ณต์‚ฌ๋ณธ์˜ ํŒŒ์ผ์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋ณ€๊ฒฝ ๋‚ด์šฉ์ด ์†์‹ค๋  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์‹คํ–‰ํ•˜๊ธฐ ์ „์— fetch๋กœ ํ™•์ธํ•˜๋Š” ๊ฒƒ์ด ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

git fetch    
git diff ...origin