Day2_220329_Git(2)
Summary
- Git Process Flow
- ํ๋ก์ ํธ ์์ ๋ฐฉ๋ฒ 2๊ฐ์ง (clone, init)
- Commit Message Prefix
- ์ปค๋ฐ์ ๋จ์
Daily Tutorial
1. How to start project - git clone
1-1. git clone
- Github์์ README.md ์ต์ ์ ์ถ๊ฐํด first-repo๋ฅผ ์์ฑํ๋ค.
- ์์ฑํ repo์ ์ฃผ์๋ฅผ ๋ณต์ฌํ๊ณ , Local์ dev ๋๋ ํ ๋ฆฌ์ cloneํ๋ค.
git clone URL
1-2. git add + commit + push
- README.md์ ํธ์งํ๋ค.
- ํ์ฌ ์ํ๋ฅผ ํ์ธํ๋ค.
git status
- README.md ํ์ผ์ staging ํ๋ค.
git add README.md
- README.md ํ์ผ์ ์ปค๋ฐํ๋ค.
์ปค๋ฐ ๋ฉ์์ง๋ -m ํ๋๊ทธ๋ฅผ ๊ฐ๊ธ์ ์ฌ์ฉํ์ง ๋ง๊ณ vim์ผ๋ก ์์ฑํ๋๋ก ํ๋ค.
git commit
- README.md ํ์ผ์ Github์ push ํ๋ค.
๋ก๊ทธ์ธ์ ์๊ตฌํ๋ ํ์ ์ด ๋ฌ๋ค๋ฉด, Github์์ "Settings"-"Developer Settings"-"Personal Access Tokens" ๋ฉ๋ด์์ "Generate new token"์ผ๋ก ํ ํฐ์ ์์ฑํด ํจ์ค์๋๋ฅผ ๊ธฐ์ ํ๋ค.
git push origin main
- Github์์ push ๋ ๋ด์ฉ์ ํ์ธํ ์ ์๋ค.
2. How to start project - git init
2-1. git init
- ์ ์ฅ์๊ฐ ์๋ ๋๋ ํ ๋ฆฌ์์๋ git ๋ช
๋ น์ด๊ฐ ๋ฃ์ง ์๋๋ค.
Local ์ ์ฅ์๋ก ์ ์ธํด์ฃผ๊ณ , git ๋ช ๋ น์ด๊ฐ ์ธ์๋จ์ ํ์ธํ๋ค.
//์ฃผ์ํด์ ์ฌ์ฉ
//ํน์๋ ์ฌ์ฉ์ ์ต์์ ํด๋(~)์์ ์
๋ ฅํ๋ค๋ฉด ํฐ ๋ฌธ์ ๊ฐ ์๊ธธ ์ ์๋ค
//์ด๋ฏธ ์ ์ง๋ ๋ค๋ฉด .git ๋๋ ํ ๋ฆฌ๋ฅผ ์ญ์ ํด์ค ๊ฒ
git init
- Github์์ ๋ชจ๋ ์ต์ ์ ์ ํํ์ง ์๊ณ second-repo๋ฅผ ์์ฑํ๋ค.
- second-repo์ ์ฃผ์๋ฅผ ๋ณต์ฌํ๊ณ , Local ์ ์ฅ์ ๋๋ ํ ๋ฆฌ์ ์ฐ๊ฒฐํด์ค๋ค.
git remote add origin URL
- README.md๋ฅผ ์์ฑํ๋ค.
touch README.md
2-2. git add + commit + push
- ํ์ฌ ์ํ๋ฅผ ํ์ธํ๋ค.
๋ํดํธ ๋ธ๋์น ์ด๋ฆ์ด master(git๊ตฌ๋ฒ์ )๋ผ๋ฉด main(gitํ๋ฒ์ )์ผ๋ก ๋ฐ๊ฟ์ฃผ์ด์ผ ํ๋ค.
git status
git branch -M main //๋ธ๋์น๊ฐ master์ผ ๊ฒฝ์ฐ
- README.md๋ฅผ add, commit, push ํ๋ค.
push ์ -u ์ต์ ์ผ๋ก Local๋ํดํธ๋ธ๋์น์ Remote๋ํดํธ๋ธ๋์น๋ฅผ ์ผ์น์์ผ ์ค๋ค.
git add README.md
git commit
git push -u mask main //local.main์ mask.main์ผ๋ก
3. TIL repo
- Github์์ TIL repo๋ฅผ ์์ฑํ๋ค.
repo name: TIL
description: Today I Learned..
Add README.md - Local์ cloneํ๊ณ ๋ฐฐ์ด ๋ด์ฉ์ md๋ก ์์ฑํ๋ค.
Notes
1. README.md
README.md๋ repo์ ์ ๋ณด๋ฅผ ์ค๋ช
ํ๋ ํ์ผ์ด๋ฉฐ, ์ฒซ ์์์ ๋ณดํต repo์ ์ ๋ชฉ์ ์จ์ค๋ค.
ํ๋ก์ ํธ์ repo๋ฅผ ์ค๋ช
ํ๋ ์ฑ
์ ํ์ง์ ๊ฐ์ ๋ฌธ์์ด์,
๋์ ๋๋ฃ, repo์ ์ฌ์ฉ์๋ฅผ ์ํ ๋ฌธ์.
์๋ ์์๋ Github์ angular ํ๋ก์ ํธ ๋ฐฉ๋ฌธํด๋ณผ ๊ฒ.
2. Commit Message Prefix
์ปค๋ฐ ์ ๋ชฉ์ 50์ ์ด๋ด, ์ ๋ชฉ๊ณผ ๋ด์ฉ ์ฌ์ด ํ ์นธ ๊ฐํํ ๊ฒ.
prefix๋ฅผ ์ฌ์ฉํ์ฌ ์ปค๋ฐ ์ฉ๋ ๋ช
์ํ๋ค.
- docs : ๋ฌธ์ํ ์์
- feat : ๊ธฐ๋ฅ ๊ฐ๋ฐ
- conf : ํ๊ฒฝ ์ค์
- fix : ๋์ํ์ง ์๋ ๊ฒ์ ๋ํ ์ค๋ฅ ๊ฐ์ , ๋ฒ๊ทธ ํจ์น, ์คํ ์์
- refactor : ์ ์ ๋์ํ๋ ๊ฒ์ ๋ํ ์ฝ๋ ๊ฐ์
3. origin
git remote ๋ช
๋ น์ ์น๋ฉด origin ์ด๋ผ๋ ๋ณ๋ช
์ ๋ณผ ์ ์๋ค.
์ด๊ฒ์ git remote -v ๋ช
๋ น ์ ๋ณด์ฌ์ง๋ URL์ alias ์ด๋ค.
์๊ฒฉ ์ ์ฅ์ ๋ณ๋ช
์ ๋ณดํต origin ์ผ๋ก ์ฐ์ง๋ง, ์ด๋ค๊ฑธ ์จ๋ ์๊ด ์๋ค.
4. git push -u
git clone ์ ์ฌ์ฉํ๋ฉด ์๋์ผ๋ก ๋งค์นญ์ด ๋์ง๋ง,
git init ์ ์ฌ์ฉํ๋ค๋ฉด push ํ ๋ 2๊ฐ์ง๋ฅผ ๋ง์ถฐ์ฃผ๋ ๊ฒ์ผ๋ก ๋ณด์ธ๋ค.
local์์ remote์ ๋ณ๋ช
๊ณผ URL ๋งค์นญ,
local์์ ๋ํดํธ๋ธ๋์น์ remote์ ๋ํดํธ๋ธ๋์น ๋งค์นญ.
5. ์ปค๋ฐ์ ๋จ์
์ปค๋ฐ ๋จ์, ์์
์ฌํญ์ ์ด๋ป๊ฒ ์๋ฅผ ๊ฒ์ธ๊ฐ์ ๋ํ ๊ณ ๋ฏผ ์ถฉ๋ถํ ํด๋ณผ ๊ฒ.
๋๋ฆ์ ํ๋นํ ์ด์ ๊ฐ ์๋ค๋ฉด, N๋ฒ ๋ชจ๋ ์ ๋ต์ด ๋ ์ ์๋ค.
๊ทธ๋ฌ๋ ์ฝ๋๊ฐ ๋์ํ๋ ๋จ์์ธ์ง ๊ณ ๋ คํ ๊ฒ.
์ปค๋ฐ์ ์๋ฏธ๋จ์, ๋์๋จ์๋ก ์์
์ ์๋ผ์ผ ํ๋ค!
Commands
git config --list
git config --global user.name "NAME"
git config --global user.email "EMAIL@EMAIL.com"
git config --global core.editor "vim"
git config --global core.pager "cat"
git clone URL
git status
git add FILE
git commit
git push origin main
git init
git remote -v
git remote add origin URL
git remote remove mask
Author And Source
์ด ๋ฌธ์ ์ ๊ดํ์ฌ(Day2_220329_Git(2)), ์ฐ๋ฆฌ๋ ์ด๊ณณ์์ ๋ ๋ง์ ์๋ฃ๋ฅผ ๋ฐ๊ฒฌํ๊ณ ๋งํฌ๋ฅผ ํด๋ฆญํ์ฌ ๋ณด์๋ค https://velog.io/@gyeol2678/Day2์ ์ ๊ท์: ์์์ ์ ๋ณด๊ฐ ์์์ URL์ ํฌํจ๋์ด ์์ผ๋ฉฐ ์ ์๊ถ์ ์์์ ์์ ์ ๋๋ค.
์ฐ์ํ ๊ฐ๋ฐ์ ์ฝํ
์ธ ๋ฐ๊ฒฌ์ ์ ๋
(Collection and Share based on the CC Protocol.)
์ข์ ์นํ์ด์ง ์ฆ๊ฒจ์ฐพ๊ธฐ
๊ฐ๋ฐ์ ์ฐ์ ์ฌ์ดํธ ์์ง
๊ฐ๋ฐ์๊ฐ ์์์ผ ํ ํ์ ์ฌ์ดํธ 100์ ์ถ์ฒ ์ฐ๋ฆฌ๋ ๋น์ ์ ์ํด 100๊ฐ์ ์์ฃผ ์ฌ์ฉํ๋ ๊ฐ๋ฐ์ ํ์ต ์ฌ์ดํธ๋ฅผ ์ ๋ฆฌํ์ต๋๋ค