[TIL] 2024-12-23_Git

YuriΒ·2024λ…„ 12μ›” 23일

TIL

λͺ©λ‘ 보기
13/59
post-thumbnail

1. Git & Github

✨ ν•„μˆ˜ λ¦¬λˆ…μŠ€ λͺ…λ Ήμ–΄

  • pwd (print working directory) : ν˜„μž¬ λ‚΄κ°€ μž‘μ—…ν•˜λŠ” 폴더
    • ~ : Home(ν™ˆ), λ°μŠ€ν¬νƒ‘ 보닀 더 μƒμœ„μ˜ 폴더
  • ls (list) : λ‚΄ 폴더 μ•ˆμ— μžˆλŠ” 폴더 & 파일 λ‚΄μ—­ 좜λ ₯
  • ls -a (list all) : μˆ¨κ²¨μ§„ νŒŒμΌκΉŒμ§€ λͺ¨λ‘ 좜λ ₯
  • cd 폴더λͺ… (change directory) : ls λͺ…λ Ήμ–΄μ—μ„œ ν™•μΈλœ ν΄λ”λ‘œ 이동 κ°€λŠ₯
    1. .. β‡’ ν•œ 단계 μœ„μ˜ ν΄λ”λΌλŠ” 뜻
    2. 폴더λͺ…/폴더λͺ… β‡’ 으둜 ν•œ λ²ˆμ— 더 깊이 λ“€μ–΄κ°ˆ 수 있음
  • mkdir : ν˜„μž¬ κ²½λ‘œμ—μ„œ 폴더λ₯Ό μƒμ„±ν•˜λŠ” λͺ…λ Ήμ–΄
  • touch : ν˜„μž¬ κ²½λ‘œμ—μ„œ νŒŒμΌμ„ μƒμ„±ν•˜λŠ” λͺ…λ Ήμ–΄
    • μ •ν™•νžˆλŠ” 파일의 생성과 파일의 λ‚ μ§œ, μ‹œκ°„μ„ λ³€κ²½ν•˜λŠ” λͺ…λ Ήμ–΄

🌳 Gitμ΄λž€?

μ½”λ“œ 변경점 기둝

🐱 Githubλž€?

온라인 λ°±μ—…, 곡유, ν˜‘μ—…

⭐️ Git ν•„μˆ˜ λͺ…λ Ήμ–΄

git init

μ½”λ“œ 관리λ₯Ό μ‹œμž‘ν•˜λŠ” λͺ…λ Ήμ–΄ (initialize : μ΄ˆκΈ°ν™”ν•˜λ‹€, 초기 μ„ΈνŒ…ν•˜λ‹€)

  • ν”„λ‘œμ νŠΈ μ‹œμž‘ μ „ λ”± ν•œ 번만 μž…λ ₯ν•˜λ©΄ 됨
  • μ •ν™•ν•œ ν”„λ‘œμ νŠΈ 폴더(경둜)μ—μ„œ μž…λ ₯ν•΄μ•Ό 함

πŸ’‘ 처음 vscode μ—μ„œ git ν”„λ‘œμ νŠΈλ₯Ό μ‹œμž‘ν•  λ•Œ
1. μ½”λ“œλ₯Ό μž‘μ„±ν•  ν”„λ‘œμ νŠΈ 폴더 생성
2. ν•΄λ‹Ή 폴더λ₯Ό vscodeμ—μ„œ μ—΄μ–΄μ€€λ‹€.
3. νŒŒμΌμ„ ν•˜λ‚˜ λ§Œλ“€κ³  μƒ˜ν”Œμ½”λ“œλ₯Ό μž…λ ₯ν•œλ‹€. (+ μ €μž₯ ν•„μˆ˜)
4. vscodeμ—μ„œ 터미널을 μ—΄μ–΄μ€€λ‹€.
5. ν„°λ―Έλ„μ—μ„œ ν˜„μž¬ μœ„μΉ˜λ₯Ό ν™•μΈν•œλ‹€.
6. git init λͺ…λ Ήμ–΄λ₯Ό μž…λ ₯ν•œλ‹€.
7. κΈ°λ³Έ λͺ…λ Ήμ–΄λ₯Ό μž…λ ₯ν•œλ‹€.
git remote add origin <github μ£Όμ†Œ>
β‡’ github μ£Όμ†Œμ— originμ΄λΌλŠ” 이름을 λΆ™μ—¬μ€€ 것
git branch -M main
β‡’ κΈ°λ³Έ 브랜치 = master β†’ λ…Έμ˜ˆ μ œλ„μ™€ κ΄€λ ¨
β‡’ ν˜„μž¬ 브랜치λͺ…(master)을 main으둜 λ°”κΎΌλ‹€!
git push -u origin main
β‡’ 이 μ£Όμ†Œ(origin)에 이 브랜치(branch)둜 λ°˜μ˜ν•œλ‹€.

git add, git commit

μ €μž₯ν•˜λŠ” λͺ…λ Ήμ–΄

  • git add 파일λͺ… β†’ μ €μž₯ν•  νŒŒμΌμ„ μ§€μ •ν•˜λŠ” 것 (μž₯λ°”κ΅¬λ‹ˆ)
    - git add . β‡’ ν˜„μž¬ λ‚˜μ˜ κ²½λ‘œμ— μžˆλŠ” λͺ¨λ“  νŒŒμΌμ„ μ§€μ •
  • git commit -m β€œλ©”μ„Έμ§€ μž‘μ„±β€ β†’ μ‹€μ œλ‘œ μ €μž₯ν•˜λŠ” 것

🚨 Please tell me who you are? 였λ₯˜ λ°œμƒ

  • git config β€”global user.name β€œμœ μ €λͺ…”
  • git config β€”global user.email β€œμœ μ €μ΄λ©”μΌβ€

git status

μ €μž₯μ—¬λΆ€λ₯Ό ν™•μΈν•˜λŠ” λͺ…λ Ήμ–΄
β†’ μ½”λ“œμ˜ 변경은 μžˆμ§€λ§Œ μ €μž₯은 ν•˜μ§€ μ•Šμ•˜λ‹€λ©΄ λΆ‰μ€μƒ‰μœΌλ‘œ ν‘œμ‹œ

git log

μ €μž₯ 내역을 ν™•μΈν•˜λŠ” λͺ…λ Ήμ–΄ β†’ 컀밋 λ©”μ‹œμ§€λ‘œ μ½”λ“œ 변경점 μΆ”μΈ‘ κ°€λŠ₯

git diff : μ½”λ“œ λ³€κ²½ 확인
git reset : 과거둜 λŒμ•„κ°€κΈ° κ°€λŠ₯

git push

μΆ”κ°€λ‘œ μˆ˜μ •λœ μ½”λ“œ λ°˜μ˜ν•˜κΈ°

  1. μ½”λ“œ μˆ˜μ •
  2. μ½”λ“œ μ €μž₯ λͺ…λ Ήμ–΄ μ‹€ν–‰ :
    git add .
    git commit -m β€œμ½”λ“œ 변경”
  3. git push origin 브랜치λͺ…

Github ν˜‘μ—… κΈ°μ΄ˆμ™€ 좩돌 해결법 (conflict)

ν”„λ‘œμ νŠΈ μ‹œμž‘

  1. ν˜‘λ ₯자(collaborator) λ“±λ‘ν•˜κΈ°
  2. git clone : μ½”λ“œ λ³΅μ‚¬ν•΄μ˜€κΈ°
    • git clone <github.μ£Όμ†Œ> . β‡’ ν˜„μž¬ 경둜 μ•ˆμ— κ°€μ Έμ˜€κΈ°

μ†ŒμŠ€ μˆ˜μ • ν›„

  1. μ½”λ“œ μˆ˜μ •
  2. μ½”λ“œ μ €μž₯ λͺ…λ Ήμ–΄ μ‹€ν–‰
    git add .
    git commit -m β€œνŒ€μ› 좔가”
  3. git push origin main

git pull

λ‹€λ₯Έ μ‚¬λžŒμ΄ λ³€κ²½ν•œ μ†ŒμŠ€λ₯Ό κ°€μ Έμ˜€κΈ°


πŸ“ TO-DO

  1. λ―Έλ‹ˆ ν”„λ‘œμ νŠΈ (둜그인, νšŒμ›κ°€μž… ν™”λ©΄)
  2. git 볡슡

πŸ’­ Diary

첫 λ‚ λΆ€ν„° νŒ€ ν”„λ‘œμ νŠΈλ₯Ό μ§„ν–‰ν•˜κ²Œ λλŠ”λ° κ²½λ ₯자이기 λ•Œλ¬Έμ— λ‚΄ 역할이 μ»€μ Έμ„œ λΆ€λ‹΄μŠ€λŸ½κΈ°λ„ ν•˜κ³  μ‹€μˆ˜ν•  λ•Œλ§ˆλ‹€ κΈ΄μž₯도 λ˜μ§€λ§Œ μ΅œλŒ€ν•œ ν”„λ‘œμ νŠΈλ₯Ό 톡해 λ§Žμ€ 것을 배우며 쒋은 κ²½ν—˜μ„ 얻을 수 있기λ₯Ό λ°”λž€λ‹€

profile
μ•ˆλ…•ν•˜μ„Έμš” :)

0개의 λŒ“κΈ€