Skip to content

Latest commit

ย 

History

11 Commits

Folders and files

NameName
Last commit message
Last commit date
ย 
ย 
ย 
ย 

Repository files navigation

README

Git์˜ ์šฉ๋„

  1. ์ฝ”๋“œ ๊ด€๋ฆฌ๋„๊ตฌ
  2. ์›๊ฒฉ ์ €์žฅ์†Œ
  3. ํ˜‘์—… ๋„๊ตฌ

Git ์šฉ์–ด์ •๋ฆฌ

Git ๊ธฐ์ดˆ

  • git init

  • git add

  • git commit

    • ์ปค๋ฐ‹ ์ด๋ฆ„์„ ์ •ํ•˜๋Š” ํ‹€

      • ์ปค๋ฐ‹์„ ํ• ๋•Œ๋Š” ์ฃผ์–ด๋Š” ๋นผ์ž(coz ๋‚ด๊ฐ€ ์ปค๋ฐ‹ํ•˜๋Š”๊ฑฐ ๋‹ค ์•Ž)
      • ๋™์‚ฌ๋Š” ์‹œ์ œ์—†์ด ๋Šฅ๋™ํƒœ๋กœ ๋™์‚ฌ์›ํ˜•์œผ๋กœ ์ ์–ด์ฃผ์ž
    • ์ปค๋ฐ‹์˜ ์‹๋ณ„์€ Hash ๊ฐ’์œผ๋กœ ํ•˜๊ฒŒ ๋˜๋Š”๋ฐ 2^160์˜ ๊ณ ์œ ํ•œ ๋ฒˆํ˜ธ๋ฅผ ๋ถ€์—ฌํ•  ์ˆ˜ ์žˆ์Œ.

      ์ œ์ผ ํฐ ์˜คํ”ˆ์†Œ์Šค์ธ ๋ฆฌ๋ˆ…์Šค ์กฐ์ฐจ 75๋งŒ๊ฐœ์˜ ์ปค๋ฐ‹๋งŒ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.

      Git commit ๊ด€๋ฆฌํ•˜๊ธฐ

      • git checkout [์ปค๋ฐ‹๋ฒˆํ˜ธ]
        • ์ปค๋ฐ‹๋ฒˆํ˜ธ์˜ ์ƒํƒœ๋กœ ๋Œ์•„๊ฐ€์„œ ์ฒดํฌํ•ด๋ณผ ์ˆ˜ ์žˆ๋‹ค
        • ์›๋ž˜ Head๋Š” ๊ฐ€์žฅ ์ตœ์‹ ์˜ ์ปค๋ฐ‹ํ•œ ๊ณณ์„ ๊ฐ€๋ฅดํ‚ค๊ณ  ์žˆ๋Š”๋ฐ(master) git checkout [์ปค๋ฐ‹๋ฒˆํ˜ธ]๋ฅผ ํ•ด์ฃผ๋ฉด Head๊ฐ€ ํ•ด๋‹น ์ปค๋ฐ‹์„ ๊ฐ€๋ฅดํ‚ค๊ฒŒ ๋œ๋‹ค.
  • git log

    • ํ˜„์žฌ๊นŒ์ง€ ์ปค๋ฐ‹ํ•œ ๋‚ด์—ญ์„ ๋ณด์—ฌ์ค€๋‹ค
    • ๋น ์ ธ๋‚˜์˜ฌ๋• q๋ฅผ ๋ˆ„๋ฆ„
  • git log --oneline

    • ๋กœ๊ทธ๋ฅผ ๋ณด์—ฌ์ค„ ๋•Œ ํ•˜๋‚˜์˜ ์ปค๋ฐ‹์„ ํ•œ์ค„๋กœ ๋ณด์—ฌ์คŒ

Git ์›๊ฒฉ์ €์žฅ์†Œ(remote)

  • git remote add [์ €์žฅ์†Œ์ด๋ฆ„] [์ €์žฅ์†Œ์ฃผ์†Œ]
  • git remote : ์›๊ฒฉ์ €์žฅ์†Œ์˜ ๋ฆฌ์ŠคํŠธ(์ด๋ฆ„)
  • git remote -v : ์›๊ฒฉ์ €์žฅ์†Œ์˜ ๋ฆฌ์ŠคํŠธ(์ด๋ฆ„, ์ฃผ์†Œ)

Git Branch

  • git branch [๋ธŒ๋žœ์น˜์ด๋ฆ„]

    • ์ƒˆ๋กœ์šด branch๋ฅผ ๋งŒ๋“ ๋‹ค (ํ‰ํ–‰์„ธ๊ณ„ ๋งŒ๋“ค๊ธฐ)
  • git branch

    • branch ๋ชฉ๋ก์„ ๋ณด์—ฌ์คŒ, ์นœ์ ˆํ•˜๊ฒŒ๋„ ํ˜„์žฌ branch๋Š” ์ƒ‰๊น”๋กœ ํ‘œ์‹œํ•ด์ค€๋‹ค
  • git switch [๋ธŒ๋žœ์น˜์ด๋ฆ„]

    • branch๋ฅผ ์ด๋™ํ•œ๋‹ค, checkout๊ณผ ๋น„์Šทํ•˜์ง€๋งŒ ์˜ค์ง branch๋ฅผ ์™”๋‹ค๋ฆฌ ๊ฐ”๋‹ค๋ฆฌ ํ•  ๋•Œ๋งŒ ์‚ฌ์šฉํ•จ
  • git checkout [๋ธŒ๋žœ์น˜์ด๋ฆ„ ๋˜๋Š” ์ปค๋ฐ‹๋ฒˆํ˜ธ]

    • branch๋ฅผ ์ด๋™ํ•˜๊ฑฐ๋‚˜, ํ•ด๋‹น ์ปค๋ฐ‹์œผ๋กœ ์ด๋™ํ•œ๋‹ค == Head๋ฅผ ๋ฐ”๊ฟ” ์ฃผ๋Š” ๊ฒƒ์ž„.
  • git branch -d [๋ธŒ๋žœ์น˜์ด๋ฆ„]

    • branch๋ฅผ ์‚ญ์ œํ•œ๋‹ค
  • git checkout -b [๋ธŒ๋žœ์น˜์ด๋ฆ„]

    • branch๋ฅผ ๊นŒ๋ฉด์„œ ๋™์‹œ์— ๋ธŒ๋žœ์น˜๋ฅผ ์ด๋™ํ•œ๋‹ค
  • git switch -c [๋ธŒ๋žœ์น˜์ด๋ฆ„]

    • ์œ„๋ž‘ ๋˜‘๊ฐ™์Œ ๊นŒ๋ฉด์„œ ๋™์‹œ์— ์ด๋™
  • git merge [๋ธŒ๋žœ์น˜์ด๋ฆ„]

    • ํ˜„์žฌ branch์—์„œ ํŠน์ • ๋ธŒ๋žœ์น˜๋ฅผ ๋ณ‘ํ•ฉํ•œ๋‹ค.
    • merge๋Š” 3๊ฐ€์ง€ ์ข…๋ฅ˜๊ฐ€ ์žˆ์Œ
      1. fast-forward merge

        • ๋ถ„๊ธฐ๋˜๊ธฐ ์ „์˜ ๋ธŒ๋žœ์น˜์—์„œ ๋”์ด์ƒ ์Œ“์ธ ์ปค๋ฐ‹์ด ์—†๋Š” ์ƒํƒœ์—์„œ ๋‹ค๋ฅธ ์ปค๋ฐ‹์„ ๋งŒ๋“ค์–ด ๋†“์€ ๋ธŒ๋žœ์น˜์™€ ํ•ฉ์น˜๋Š” ๊ฒƒ == ์ปค๋ฐ‹ํ•  ๋ธŒ๋žœ์น˜๊ฐ€ ํ˜„์žฌ ๋ธŒ๋žœ์น˜ํ™” ๋˜๋Š” ๊ฒƒ!
      2. auto merge (without conflict)

        • branch๊ฐ€ merge ๋  ๋•Œ ๋‘๊ฐœ์˜ ๋‚ด์šฉ์ด ํ•ฉ์ณ์ง€์ง€ ์•Š์„ ๊ฒฝ์šฐ์— git์ด ์•Œ์•„์„œ ํ•ฉ์ณ๋ฒ„๋ฆผ.
      3. merge with conflict

        • ์„œ๋กœ ๋‹ค๋ฅธ branch์—์„œ ๊ฐ™์€ ํŒŒ์ผ์„ ์ˆ˜์ •ํ–ˆ์„ ๊ฒฝ์šฐ,(๋™์ผ ํŒŒ์ผ์ด์–ด๋„ ๋‚ด์šฉ์ด ์—ฐ๊ฒฐ๋  ์ˆ˜ ์žˆ์œผ๋ฉด auto merge๊ฐ€ ์ผ์–ด๋‚  ์ˆ˜ ๋„ ์žˆ์Œ)

        • ํŠนํžˆ ๋™์ผ ๋ผ์ธ์˜ ๋‚ด์šฉ์ด ๋‹ค๋ฅผ ๊ฒฝ์šฐ(์ด๊ฒฝ์šฐ์—” ๋ฌด์กฐ๊ฑด conflict๊ฐ€ ์ผ์–ด๋‚ฉ๋‹ˆ๋‹ค. ๋™์ผ ํŒŒ์ผ์„ ์ˆ˜์ •ํ•  ๋–ˆ ์กฐ์‹ฌํ•˜์ž์ข€)

        • conflict๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด!

          <<<<<<<<<<<< HEAD
          ํ˜„์žฌ ๋ธŒ๋žœ์น˜ ๋‚ด์šฉ
          ==============
          ํ•ฉ์น˜๋ ค๋Š” ๋ธŒ๋žœ์น˜๋‚ด์šฉ
          >>>>>>>>>>>> [ํ•ฉ์น˜๋ ค๋Š” ๋ธŒ๋žœ์น˜]
          

          ๊นƒ์ด ์นœ์ ˆํ•˜๊ฒŒ ์œ„์ฒ˜๋Ÿผ conflict๋ฅผ ์ˆ˜์ •ํ•˜๋ผ๊ณ  ํ•˜๋ฉด์„œ ํ˜„์žฌ merge์ค‘์ด๋ผ๋Š” merging ํ‘œ์‹œ๋ฅผ ๋„์›Œ์ค€๋‹ค.

          ๊ทธ๋Ÿฌ๋ฉด ์ˆ˜์ •ํ•ด์ฃผ๊ณ  add commit์„ ํ•ด์ฃผ๋ฉด ๊น”๋”ํ•˜๊ฒŒ ํ•ด๊ฒฐ!

        • conflict์˜ ์ •์˜

          • ๋™์ผ ํŒŒ์ผ์˜ ๋™์ผ ๋ผ์ธ์˜ ๋‚ด์šฉ์ด ๋‹ค๋ฅผ ๊ฒฝ์šฐ!

ํ•œ๋งˆ๋””๋กœ ํ‰ํ–‰์„ธ๊ณ„๋ฅผ ๋งŒ๋“ค์–ด๋‚ธ๋‹ค.

visualization git์„ ํ†ตํ•ด ์‹œ๊ฐ์ ์œผ๋กœ ์•Œ์•„๋ณด์ž

url ๋งจ ์•ž์— test.์„ ๋ถ™์ด๋ฉด ํ…Œ์ŠคํŠธํ•˜๋Š”์• ๋“ค ์ž˜ํ•˜๋ฉด ๋ณผ์ˆ˜๋„ ์žˆ์Œ ใ…‹ใ…‹

git pull์€ auto merge์™€ fetch ๊ณผ์ •์„ ํ•ฉ์นœ๊ฒƒ!@#!#!@#!#!@#!#

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors