[Git] git fetch์™€ git pull์˜ ์ดํ•ด

2025. 2. 12. 16:02ยท๐Ÿ“ฐ ๊ธฐํƒ€ ๊ฐœ๋ฐœ ์ž๋ฃŒ

 

๐Ÿ”Ž ์ฃผ์ œ

git fetch์™€ git pull์˜ ์ฐจ์ด์ ์„ ์„ค๋ช…ํ•˜๊ณ , ๊ฐ๊ฐ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ ์ ˆํ•œ ์ƒํ™ฉ์„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.

๋‘˜ ๋‹ค ์›๊ฒฉ์—์„œ ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ๊ฒƒ ๊ฐ™์€๋ฐ..? ์ •ํ™•ํžˆ๋Š” ์ž˜ ๋ชจ๋ฅด๊ณ  ๋ฌด์กฐ๊ฑด pull์„ ์ผ๋˜ ๊ณผ๊ฑฐ... ์˜ค๋Š˜์€ pull๊ณผ fetch์˜ ์ฐจ์ด๋ฅผ ๋‹ค๋ฃฌ๋‹ค.

โœ… git pull

git pull์€ ๋กœ์ปฌ ๋ ˆํฌ์ง€ํ† ๋ฆฌ๋ณด๋‹ค ์›๊ฒฉ ๋ ˆํฌ์ง€ํ† ๋ฆฌ๊ฐ€ ๋” ์ตœ์‹  ์ปค๋ฐ‹์„ ๊ฐ€์ง€๊ณ  ์žˆ์„ ๋•Œ, ์›๊ฒฉ ๋ ˆํฌ์ง€ํ† ๋ฆฌ ๋‚ด์šฉ์„ ๋กœ์ปฌ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์— ๋ฐ˜์˜ํ•˜๋Š” ๋ช…๋ น์–ด์ด๋‹ค.

pull='์žก์•„๋‹น๊ธฐ๋‹ค'๋กœ ์›๊ฒฉ์˜ ๋‚ด์šฉ์„ ๋กœ์ปฌ๋กœ ์žก์•„๋‹น๊ธด๋‹ค๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค.
๋™๋ฃŒ ๊ฐœ๋ฐœ์ž์™€ ํ˜‘์—…์„ ํ•˜๋ฉฐ ์ฝ”๋“œ๋ฅผ ์ฃผ๊ณ  ๋ฐ›๋Š” ์ผ ์ค‘ ๋ฐ›๋Š”์ผ์— ํ•ด๋‹นํ•œ๋‹ค.

์›๊ฒฉ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์˜ ์ˆ˜์ • ์‚ฌํ•ญ์„ ๋กœ์ปฌ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์— ๋ฐ˜์˜ํ•˜๋Š” ๊ฒƒ์€
์›๊ฒฉ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์˜ ํ˜„์žฌ ๋ธŒ๋žœ์น˜๋ฅผ ๋กœ์ปฌ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์˜ ํ˜„์žฌ ๋ธŒ๋žœ์น˜๋กœ ๋ณ‘ํ•ฉ(merge)ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

๐Ÿ–๏ธ push ์ „์— pull์„ ํ•ด์•ผํ•˜๋Š” ๊ฒฝ์šฐ

๋‚ด๊ฐ€ ๋กœ์ปฌ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์—์„œ ๋‚ด ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๋™์•ˆ
๋™๋ฃŒ๊ฐ€ ์›๊ฒฉ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์— ์ƒˆ๋กœ์šด ์ฝ”๋“œ๋ฅผ ์˜ฌ๋ ธ๋‹ค๋ฉด, git push๋ฅผ ํ•  ์ˆ˜ ์—†๋‹ค.

์ด๋ฏธ ๋™๋ฃŒ๊ฐ€ ์ถ”๊ฐ€ํ•œ ๋‚ด์šฉ์ด ์žˆ๋Š”๋ฐ ๋‚ด ์ฝ”๋“œ๋ฅผ pushํ•˜๋ฉด
๋™๋ฃŒ์˜ ๋‚ด์šฉ์€ ๋ฎ์–ด์”Œ์›Œ์ ธ ์‚ฌ๋ผ์งˆ ๊ฒƒ์ด๋‹ค.
๊ทธ๋ž˜์„œ ์ด ๊ฒฝ์šฐ์—๋Š” git push๋ฅผ ์‹œ๋„ํ•ด๋„ ์‹คํŒจํ•œ๋‹ค.
์ด๋•Œ๋Š” push ์ „์— git pull์„ ํ•˜์—ฌ ๋™๋ฃŒ์˜ ์ˆ˜์ • ๋‚ด์šฉ์„ ๋‚ด ๋กœ์ปฌ์— ๋ฐ˜์˜ํ•˜์ž.
pull์€ merge์™€ ๊ฐ™์œผ๋ฏ€๋กœ, Merge Conflict๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค. ํ•ด๊ฒฐํ•˜์—ฌ pull์„ ๋งˆ๋ฌด๋ฆฌํ•œ๋‹ค.

๊ทธ ์ดํ›„ pushํ•˜๋ฉด ์ •์ƒ์ ์œผ๋กœ ๋™์ž‘ํ•œ๋‹ค.

โœ… git fetch

pull์€ ์›๊ฒฉ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์˜ ์ˆ˜์ •์‚ฌํ•ญ์„ ๊ฐ€์ ธ์™€์„œ ๋กœ์ปฌ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์˜ ๋ธŒ๋žœ์น˜์— merge๋ฅผ ํ•œ๋‹ค๋ฉด,
git fetch๋Š” ๊ฐ€์ ธ์˜ค๊ธฐ๋งŒ ํ•˜๊ณ , mergeํ•˜์ง€ ์•Š๋Š”๋‹ค.

์™œ ์•Œ์•„์„œ merge๊นŒ์ง€ ํ•ด์ฃผ๋Š” git pull์„ ์“ฐ์ง€ ์•Š๊ณ  git fetch๋ฅผ ์จ์•ผํ• ๊นŒ?

git fetch๋Š” ์ผ๋‹จ ์›๊ฒฉ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์— ์žˆ๋Š” ๋ธŒ๋žœ์น˜์— ๋‚ด์šฉ์„ ๊ฐ€์ ธ์™€์„œ ์‚ดํŽด๋ณธ ํ›„์— mergeํ•˜๊ณ  ์‹ถ์„ ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.

๋งŒ์•ฝ ์›๊ฒฉ์— ์žˆ๋Š” ๋‚ด์šฉ์ด ์ด์ƒํ•œ, ํ•„์š” ์—†๋Š” ๋‚ด์šฉ์ผ ์ˆ˜๋„ ์žˆ๋‹ค. ํ˜‘์—…ํ•  ๋•Œ ์žˆ์„ ์ˆ˜ ์žˆ๋Š” ์ผ์ด๋‹ค. (์‹ ์ž… ๊ฐœ๋ฐœ์ž๋ผ๋ฉด ํ•  ์ˆ˜ ์žˆ๋Š” ์‹ค์ˆ˜๋‹ค..)
๊ทธ๋Ÿด ๋•Œ๋Š” git pull์ด ๋ณ‘ํ•ฉ์„ ํ•˜๊ธฐ ์ „์— ํ™•์ธ์ด ํ•„์š”ํ•˜๋‹ค.

 

fetch๋กœ ๊ฐ€์ ธ์˜จ ํ›„ git diff ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ์›๊ฒฉ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์˜ ๋ธŒ๋žœ์น˜์™€ ๋กœ์ปฌ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์˜ ๋ธŒ๋žœ์น˜์˜ ์ฐจ์ด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
ํ˜„์žฌ ๋กœ์ปฌ์—๋Š” local.md ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๊ณ  ์ปค๋ฐ‹ํ•œ ์ƒํƒœ๊ณ , ์›๊ฒฉ์—์„œ๋Š” remote.md ํŒŒ์ผ์ด ์žˆ๋‹ค.

 

์ด๋•Œ ํ•ด๊ฒฐ๋ฐฉ๋ฒ•์€

  1. ๋™๋ฃŒ์—๊ฒŒ ์ฐพ์•„๊ฐ€ ์ˆ˜์ • ํ›„ ๋‹ค์‹œ ์›๊ฒฉ์— pushํ•˜๋ผ๊ณ  ํ•˜๊ธฐ
  2. ๋‚ด๊ฐ€ ์•Œ์•„์„œ ํ•ด๊ฒฐํ•˜๊ณ  ์›๊ฒฉ์— pushํ•˜๊ธฐ

๐Ÿ”‘ ์ฐจ์ด์  ์š”์•ฝ

git pull

  1. ์›๊ฒฉ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์˜ ์ˆ˜์ • ์‚ฌํ•ญ ์ •๋ณด๋ฅผ ๋กœ์ปฌ ๋ ˆํฌ์ง€ํ† ๋ฆฌ๋กœ ๊ฐ€์ ธ์˜ค๊ณ  ๋ณ‘ํ•ฉํ•œ๋‹ค.
  2. ์›๊ฒฉ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์˜ ์ตœ์‹  ์ปค๋ฐ‹์„ ๊ฒ€ํ† ํ•˜์ง€ ์•Š๊ณ  ๋กœ์ปฌ์— ๋ฐ˜์˜ํ•ด์•ผ ํ•  ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.

git fetch

  1. ์›๊ฒฉ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์˜ ์ˆ˜์ • ์‚ฌํ•ญ ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ค๊ธฐ๋งŒ ํ•œ๋‹ค.
  2. ์›๊ฒฉ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์—์„œ ๊ฐ€์ ธ์˜จ ๋ธŒ๋žœ์น˜์˜ ๋‚ด์šฉ์„ ๋กœ์ปฌ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์˜ ๋ธŒ๋žœ์น˜์— ๋ณ‘ํ•ฉ(merge)ํ•˜๊ธฐ ์ „์— ์ ๊ฒ€์ด ํ•„์š”ํ•  ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.
  3. ์›๊ฒฉ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์— ์žˆ๋Š” ๋ธŒ๋žœ์น˜์˜ ๋‚ด์šฉ๊ณผ ๋‚ด๊ฐ€ ์ž‘์„ฑํ•œ ์ฝ”๋“œ๋ฅผ ๋น„๊ตํ•ด์•ผ ํ•  ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.
๋ฐ˜์‘ํ˜•

'๐Ÿ“ฐ ๊ธฐํƒ€ ๊ฐœ๋ฐœ ์ž๋ฃŒ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

์›น ์„œ๋ฒ„(Web Server) vs WAS(Web Application Server) ๊ฐœ๋… ์ดํ•ด์™€ ์ฐจ์ด ๋น„๊ต feat. Tomcat  (0) 2025.02.17
ํ”„๋ ˆ์ž„์›Œํฌ vs ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๊ฐœ๋…  (0) 2025.02.16
[๊ฐ์ฒด์ง€ํ–ฅํ”„๋กœ๊ทธ๋ž˜๋ฐ] ์‰ฌ์šด ์˜ˆ์‹œ์™€ ํ•จ๊ป˜ ๋ณด๋Š” SOLID ์›์น™  (0) 2025.02.12
[Git] git rebase์™€ git merge์˜ ์ดํ•ด  (0) 2025.02.12
[Git] Git Flow ์ „๋žต์˜ ์ดํ•ด์™€ ํ˜‘์—… ์‹œ ํ™œ์šฉ  (0) 2025.02.12
'๐Ÿ“ฐ ๊ธฐํƒ€ ๊ฐœ๋ฐœ ์ž๋ฃŒ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • ํ”„๋ ˆ์ž„์›Œํฌ vs ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๊ฐœ๋…
  • [๊ฐ์ฒด์ง€ํ–ฅํ”„๋กœ๊ทธ๋ž˜๋ฐ] ์‰ฌ์šด ์˜ˆ์‹œ์™€ ํ•จ๊ป˜ ๋ณด๋Š” SOLID ์›์น™
  • [Git] git rebase์™€ git merge์˜ ์ดํ•ด
  • [Git] Git Flow ์ „๋žต์˜ ์ดํ•ด์™€ ํ˜‘์—… ์‹œ ํ™œ์šฉ
์†Œ์˜ ๐Ÿ€
์†Œ์˜ ๐Ÿ€
Hello World โœจ
  • ์†Œ์˜ ๐Ÿ€
    Soyoung's Dev Lab
    ์†Œ์˜ ๐Ÿ€
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
  • ๊ธ€์“ฐ๊ธฐ ๊ด€๋ฆฌ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (55) N
      • ๐Ÿ“ข ๊ฒŒ์‹œํŒ (0)
      • ๐ŸŒฟSpring (17)
      • โ˜•Java (8)
      • โš™๏ธ CS (11) N
        • ๐Ÿ›œ ๋„คํŠธ์›Œํฌ (5) N
        • ๐Ÿ“Š ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค (3)
        • ๐Ÿ–ฒ๏ธ์šด์˜์ฒด์ œ (2)
        • ๐Ÿ“š ์ž๋ฃŒ๊ตฌ์กฐ & ์•Œ๊ณ ๋ฆฌ์ฆ˜ (1)
      • ๐Ÿ“ค ๋ฐฐํฌ (4)
        • Docker (4)
        • AWS (0)
      • ๐Ÿ“ฐ ๊ธฐํƒ€ ๊ฐœ๋ฐœ ์ž๋ฃŒ (12)
      • ๐Ÿ–ฅ๏ธ ํ”„๋กœ์ ํŠธ (0)
      • ๐Ÿ‘ฉ‍๐Ÿ’ป ํ™œ๋™ & ํ›„๊ธฐ (1)
      • ๐Ÿต ์ด์•ผ๊ธฐ (2)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํƒœ๊ทธ
  • ๋งํฌ

    • github
    • velog
  • ๊ณต์ง€์‚ฌํ•ญ

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    ๊ฐœ๋ฐœ
    ๋ฐฐํฌ
    ์„œ๋ฒ„
    Spring Security
    ๊ฐ์ฒด์ง€ํ–ฅํ”„๋กœ๊ทธ๋ž˜๋ฐ
    ๊ธฐ์ˆ  ๋ฉด์ ‘
    ์œ„ํด๋ฆฌ ํŽ˜์ดํผ
    ์•Œ๊ณ ๋ฆฌ์ฆ˜
    GIT
    ์ฝ”๋“œ์ž‡ ์Šคํ”„๋ฆฐํŠธ
    ์ž๋ฃŒ๊ตฌ์กฐ
    docker
    ๋„คํŠธ์›Œํฌ
    Spring
    ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
    ์ฝ”๋”ฉํ…Œ์ŠคํŠธ
    Java
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
์†Œ์˜ ๐Ÿ€
[Git] git fetch์™€ git pull์˜ ์ดํ•ด
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”