๐ŸŒฑ → ๐ŸŒณ

Git๊ณผ Github ์‹œ์ž‘ํ•˜๊ธฐ ๋ณธ๋ฌธ

Git

Git๊ณผ Github ์‹œ์ž‘ํ•˜๊ธฐ

BAY 2022. 4. 29. 16:27
728x90

๊ฐœ๋ฐœ์„ ์‹œ์ž‘ํ•œ์ง€ ์–ด์–ธ ํ•œ ๋‹ฌ ,, 

์ง€๊ธˆ ๋‚˜์—๊ฒŒ ๊ฐ€์žฅ ์–ด๋ ค์šด ๊ฒƒ์€ ๊ทธ ๋ฌด์—‡๋„ ์•„๋‹Œ git, github์ด๋‹ค. ... 

์ธํ”„๋Ÿฐ์— ๋ฌด๋ฃŒ ๊ฐ•์˜๊ฐ€ ์žˆ๊ธธ๋ž˜ ๋“ค์–ด๋ณด์•˜๋‹ค. ! ์ƒ๊ฐ๋ณด๋‹ค ๋” ๋งŽ์ด ๋„์›€์ด ๋œ ๊ฒƒ ๊ฐ™์ง€๋งŒ 

์•„์ง๋„ ๋‚˜์—๊ฒŒ git์€ ๋„ˆ๋ฌด ์–ด๋ ต๋‹ค ใ…œใ…œ 

 

git ๊ธฐ์ดˆ ๋ช…๋ น์–ด ์š”์•ฝ

  • clone: ์›๊ฒฉ ์ €์žฅ์†Œ ๋ณต์‚ฌ
  • add: ์Šคํ…Œ์ด์ง€ ์˜์—ญ์— ์ž‘์—… ํŒŒ์ผ ์ถ”๊ฐ€
  • commit: ์„ธ์ด๋ธŒ, ์Šคํ…Œ์ด์ง€ ์˜์—ญ์˜ ํŒŒ์ผ๋“ค์„ ๊ฐ€์ง€๊ณ  ์ปค๋ฐ‹(=์„ธ์ด๋ธŒ) ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.
  • push: ์›๊ฒฉ ์ €์žฅ์†Œ์— ์ปค๋ฐ‹์„ ์—…๋กœ๋“œํ•œ๋‹ค.

 

ํŒŒ์ผ์˜ ๋‚ด์šฉ ๋˜๋Œ๋ฆฌ๊ธฐ

  • ํŠน์ • ํŒŒ์ผ์˜ ๋‚ด์šฉ์„ ๋งˆ์ง€๋ง‰ ์ปค๋ฐ‹์œผ๋กœ ๋Œ๋ฆฌ๊ณ  ์‹ถ๋‹ค๋ฉด ํ•ด๋‹น ํŒŒ์ผ ์„ ํƒ ํ›„ ์ฝ”๋“œ ๋ญ‰์น˜ ๋ฒ„๋ฆฌ๊ธฐ ์„ ํƒ

 

๋ธŒ๋žœ์น˜ ๋ณ€๊ฒฝํ•˜๊ธฐ

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

 

๋ณ‘ํ•ฉํ•˜๊ธฐ 1

  • ํ—ค๋“œ ๋ธŒ๋žœ์น˜์— ๋ณ€๊ฒฝ์‚ฌํ•ญ์ด ์—†๊ณ 
  • ๋ณ‘ํ•ฉ ๋Œ€์ƒ ๋ธŒ๋žœ์น˜๊ฐ€ ํ—ค๋“œ๋กœ๋ถ€ํ„ฐ ์‹œ์ž‘๋œ ๊ฒฝ์šฐ
  • ์•„์ฃผ ์‰ฝ๊ฒŒ ๋ณ‘ํ•ฉ ๊ฐ€๋Šฅ = fast-forward

 

๋ณ‘ํ•ฉํ•˜๊ธฐ 2

  • ํ—ค๋“œ ๋ธŒ๋žœ์น˜์— ์ถ”๊ฐ€์ ์ธ ์ปค๋ฐ‹์ด ์ƒ๊ธฐ๋Š” ๊ฒฝ์šฐ
  • ์ง„์งœ ๋ณ‘ํ•ฉ์ด ํ•„์š”ํ•ด ์ง„๋‹ค.
  • ์ถฉ๋Œ์ด ์•ˆ ๋‚˜๋ฉด ์ข‹์€๋ฐ, ์ถฉ๋Œ์ด ๋‚˜๋„ ๊ฒ๋‚ด์ง€ ๋ง์ž.

 

์ถฉ๋Œ ํ•ด๊ฒฐํ•˜๊ธฐ

  • ์ œ์ผ ์ค‘์š”ํ•œ ์ : ๊ฒ๋‚ด์ง€ ๋ง์•„์š”!
  • ๊ฐ™์€ ํŒŒ์ผ์„ ๋ณ‘ํ•ฉ ๋Œ€์ƒ ๋‘ ์ปค๋ฐ‹์—์„œ ๋™์‹œ ์ˆ˜์ •ํ–ˆ์„ ๊ฒฝ์šฐ ์ถฉ๋Œ์ด ๋‚  ํ™•๋ฅ ์ด ๋†’๋‹ค!
  • ์—๋””ํ„ฐ ์‚ฌ์šฉ, ํ˜น์€ SourceTree๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์ถฉ๋Œ ํ•ด๊ฒฐ ๊ฐ€๋Šฅํ•˜๋‹ค.

 

์ปค๋ฐ‹ ๋˜๋Œ๋ฆฌ๊ธฐ

reset ์‚ฌ์šฉํ•˜๊ธฐ

  • ์žฅ์ : ์‰ฌ์›Œ์š”.
  • ๋‹จ์ 1: ์ปค๋ฐ‹์ด ๋‚ ์•„๊ฐ„๋‹ค
  • ๋‹จ์ 2: ๊ฐ•์ œ ํ‘ธ์‹œ๊ฐ€ ํ•„์š”ํ•˜๋‹ค.

 

branch ๋งŒ๋“ค์–ด์„œ ๋˜๋Œ๋ฆฌ๊ธฐ

  • reset๊ณผ๋Š” ๋‹ฌ๋ฆฌ ๋‚ด์šฉ์ด ์‚ฌ๋ผ์ง€์ง€ ์•Š๋Š”๋‹ค.
  • ์žฅ์ : ์‰ฝ๋‹ค.
  • ๋‹จ์ : ํŠธ๋ฆฌ๊ฐ€ ์ง€์ €๋ถ„ํ•ด์ง„๋‹ค.

 

revert

  • ์—ญ์‹œ ์ปค๋ฐ‹์€ ์—†์–ด์ง€์ง€ ์•Š๋Š”๋‹ค.
  • ์žฅ์ : ๊ฐ€์žฅ ์ •์„์ 
  • ๋‹จ์ : ์ถฉ๋Œ์ด ๋‚  ์ˆ˜ ์žˆ๋‹ค.
  • ์ฃผ์˜์‚ฌํ•ญ: ํ˜„์žฌ ์„ ํƒํ•œ ์ปค๋ฐ‹์˜ ๋‚ด์šฉ์„ ๋˜๋Œ๋ฆฐ๋‹ค.

 

revert 2

  • revert๋กœ ์—ฌ๋Ÿฌ ์ปค๋ฐ‹์„ ๋˜๋Œ๋ฆฌ๋ ค๋ฉด ์ตœ์‹ ๋ถ€ํ„ฐ ์ˆœ์„œ๋Œ€๋กœ revert ํ•˜์ž
  • ๊ทธ๋ ‡๊ฒŒ ํ•˜๋ฉด ์ถฉ๋Œ์„ ๋ง‰์„ ์ˆ˜ ์žˆ๋‹ค.

 

์ปค๋ฐ‹ ๋ฎ์–ด์“ฐ๊ธฐ

  • ํ•„์š”ํ•˜๋‹ค๋ฉด ์ด์ „ ์ปค๋ฐ‹ ๋ฎ์–ด์“ฐ๊ธฐ๋„ ๊ฐ€๋Šฅ
  • commit --amend
  • ์ด๋ฏธ push๋ฅผ ํ•œ ๊ฒฝ์šฐ push --force๊ฐ€ ํ•„์š”ํ•จ

 

stash

  • ๋‹ค๋ฅธ ๋ธŒ๋žœ์น˜๋กœ ์ฒดํฌ์•„์›ƒํ•˜๊ธฐ ์ „์— ํ˜„์žฌ ์ž‘์—…๋‚ด์šฉ์„ ์ €์žฅํ•˜๋Š” ์ž„์‹œ ์ €์žฅ์†Œ
  • ์œ ์šฉํ•˜๋‹ˆ ์ž˜ ์‚ฌ์šฉํ•˜์ž.

 

๊ธฐํƒ€ ์ฃผ์˜ ์‚ฌํ•ญ

  • ์ฝ”๋“œ๋ฅผ ๋‚จ๊ธฐ๋ ค๊ณ  ์ฃผ์„์„ ๋‹ฌ์ง€ ๋ง์ž.
  • ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€๋ฅผ ์ž˜ ์“ฐ์ž.
  • ํ•œ๊ฐ€์ง€ ๊ตฌํ˜„์ด ์™„๋ฃŒ๋  ๋•Œ๋งˆ๋‹ค ์ปค๋ฐ‹์„ ํ•˜์ž. (์ž์ฃผ ํ•˜์ž)

 

rebase

  • merge ์ฒ˜๋Ÿผ ๋‘ ๋ธŒ๋žœ์น˜๋ฅผ ํ•ฉ์น  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • ํ˜„์žฌ ๋ธŒ๋žœ์น˜๊ฐ€ ๋Œ€์ƒ ๋ธŒ๋žœ์น˜ ์œ„๋กœ ์˜ฌ๋ผ๊ฐ‘๋‹ˆ๋‹ค.
  • ์œ„ํ—˜ํ•˜๋‹ˆ ์กฐ์‹ฌ์Šค๋ ˆ ์‚ฌ์šฉํ•˜์ž.

 

 

728x90

'Git' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Git] Git ์ด๋ž€?  (0) 2022.06.04