์ด์ ๋ํ ์ ํ ํ ์ฒ์์ผ๋ก ๋ ์์ค์ ๋ฑ๋กํ๋ค.
์ด์ ๋ ์ด์ ๊นํ๋ธ์ ํฌํ ํด๋ฆฌ์ค๋ฅผ ๋ง๋ค๊ธฐ ์ํด์ ์ํ์ฝ๋ฉ ๊นํ๋ธ ๊ฐ์ข๋ฅผ ๋ค์ผ๋ฉฐ ๊น์ ์ตํ๊ณ , ์ค๋๋ ์ด์ด์ ๊น ๊ณต๋ถ๋ฅผ ํ๋ ค๊ณ ํ๋ค.
์์ฆ ์์ฐจ์ ์์ ํ๊ณ๋ก ์์นจ์๋ 1์์ ์ผ์ด๋๋ฉฐ ๋๋ฌด ๊ฒ์ผ๋ฅด๊ฒ ์ด๊ณ ์์ด์ ๋๋ฌด ํ์ฌํ๋ค.
๊ฒฐ๊ตญ 3์์ ์ง์์ ๋์ค๊ธฐ๋ผ๋ ์ฑ๊ณตํ์ผ๋๊น ์ด์ ์ง์คํด์ ๊ณต๋ถํ์
PLAN
1. ๊น ์ตํ๊ธฐ(์ํ์ฝ๋ฉ ๊น ๊ฐ์ข)
+ ๊น ํ๋ธ README documenting ์ตํ๊ธฐ https://guides.github.com/features/wikis/
+ Markdown https://guides.github.com/features/mastering-markdown/
2. USJ AT ์์
Final ๊ณผ์ ๊น์ ์ฌ๋ฆฌ๊ธฐ
3. USJ WEB git readme ํ์ผ ์ ๊ธฐ
1) Brick game 2) Escape game 3) Phaser (์์ฐ์์ ์ฐ๊ธฐ)
4. ์ฐํํ ์ต ์ค๋์ ๊ณต๋ถํ๊ธฐ
NOTE
[์ํ์ฝ๋ฉ]>[ํ๋ก์ ํธ ๊ด๋ฆฌ]>[Git CLI - ๋ฒ์ ๊ด๋ฆฌ] ์ ๋ฆฌ
1. ๋ฒ์ ๊ด๋ฆฌ์ ์์
ํ์ ๊น ๋ฐ์คํฌํฑ๋ง ์ฌ์ฉํด์ git bash๋ฅผ ์ ๋๋ก ์ฌ์ฉํ๋ ๋ฒ์ ๋ชฐ๋๋๋ฐ ๋ช ๋ น์ด์ ๋ํด ์ฝ๊ณ ์ ํํ ์ ์ ์์ด์ ์ข์๋ค.
- Git bash ์คํ
- Repository๋ฅผ ๋ง๋ค ๋๋ ํ ๋ฆฌ๋ก ์ด๋
(๋๋ OneDrive๋ฅผ ์ฌ์ฉํด์ /OneDrive/Documents/GitHub๋ก ์ด๋ํ๋ค) - hello-git-cli๋ผ๋ ๋นํด๋ ์์ฑ
- git init . ํ์ฌ ํด๋๋ฅผ ๊น์๊ฒ ๋ฒ์ ๊ด๋ฆฌ๋ฅผ ์ํค๋ ๋ช ๋ น์ด
- ๋ฒ์ ์ ๋ณด๋ค์ด .git ํ์ผ ์์ ์ ์ฅ๋จ => ** .git ์ง์ฐ๋ฉด ์๋
2. ๋ฒ์ ์ ์์ฑ
- Working tree : ํ์ผ์ ๋ง๋ค๊ณ ์์ ํ๋ ๋ฒ์ ์ผ๋ก ๋ง๋ค์ด์ง๊ธฐ ์ ๋จ๊ณ
- Staging Area : ๊น์ ์ฌ๋ฆด ํ์ผ(๋ฒ์ ์ผ๋ก ๋ง๋ค๊ณ ์ถ์ ํ์ผ)์ ๋๋ ๊ณต๊ฐ
- Repository : ๋ฒ์ ์ด ์ ์ฅ๋๋ ๊ณณ
(10๊ฐ์ ํ์ผ์ด working tree์ ์์ผ๋ฉด 2๊ฐ๋ง Staging Area์ ๋ฃ์์ ๋ ๊ทธ ์ฌ๋ฆฐ 2๊ฐ์ ํ์ผ๋ก๋ง Repository์ ๋ฒ์ ์ ์์ฑํ๋ค)
- ํ์ผ์์ฑ: nano hello1.txt (ํ์ผ ๋ด์ฉ: 1)
- cat hello1.txt ๋ช
๋ น์ด๋ก ํ์ธ ๊ฐ๋ฅ
(cat [ํ์ผ๋ช ] -> ํ์ผ๋ช ์ ๋ด์ฉ์ ์ถ๋ ฅ) - git status
- hello1.txt๋ฅผ ๋ฒ์ ์ผ๋ก ๋ง๋ค๊ธฐ ์ํด์๋ ์ด๋ฅผ Staging Area์ ์ฌ๋ ค์ผํจ
- git add hello1.txt ๋ช ๋ น์ด๋ฅผ ์คํ
- git commit((๋ฒ์ ์) ์ ์ถํ๋ค) -m "Message 1"(์ปค๋ฐ ๋ฉ๋ชจ)
- git log : ์ญ์ฌ๋ฅผ ๋ณผ์ ์์
- hello1.txt ํ์ผ ๋ด์ฉ์ ์์ (ํ์ผ ๋ด์ฉ: 1 2)ํ๊ณ ์ ๊ณผ์ ๋ฐ๋ณต
git add hello1.txt -> git commit -m "Message 2" -> git log
3. ์ฌ๋ฌ๊ฐ์ ํ์ผ์ ํ๋์ ๋ฒ์ ์ผ๋ก ๋ง๋ค๊ธฐ
- ์๋ก์ด ํ์ผ hello2.txt ์์ฑ -> git status ํ์ธ
- ๋ ํ์ผ ๋ชจ๋ add ํ ํ status ํ์ธ
- ์ปค๋ฐ ํ status์ log ํ์ธ
- git log --stat : ํ๋์ ๋ฒ์ ์ ์ด๋ค ํ์ผ๋ค์ด ๊ด๋ จ๋์๋์ง ์ ์ ์์
- => ์ฌ๋ฌ๊ฐ์ ํ์ผ์ ํ๋์ ๋ฒ์ ์ผ๋ก ๋ง๋ค ์ ์์
4. ๋ฒ์ ๊ฐ์ ์ฐจ์ด์ ๋น๊ต
- hello1.txt ํ์ผ ๋ณ๊ฒฝ ํ git diff(difference) ํ์ธ
๋ง์ง๋ง ๋ฒ์ ๊ณผ ํ์ฌ working tree ์ฌ์ด์ ์ฐจ์ด์ ํ์ธ ๊ฐ๋ฅ
- git reset --hard ๋ช
๋ น์ด: ๋ง์ง๋ง ๋ฒ์ ์ดํ ๋ณ๊ฒฝํ๋ ๊ฒ์ด ๋ง์์ ์ ๋ค ๋,
๋ง์ง๋ง ๋ฒ์ ์ผ๋ก ๋ค์ ๋๋๋ฆด ์ ์์ - git log -p(patch) : log์์ ๋ฒ์ ๊ณผ ๋ฒ์ ๊ฐ์ ๋ค๋ฅธ์ ์ด ๋ฌด์์ธ์ง ๋ณด์ฌ์ค
5. checkout๊ณผ ์๊ฐ์ฌํ
- git checkout [๋ฒ์ ๊ณ ์ ๋ฒํธ](ex) 2f986cbef88d30088a44d27daf4dd6498db5115f)
: repository๊ฐ ๊ณ ์ ๋ฒํธ์ ํด๋นํ๋ ๋ฒ์ ์ผ๋ก ๋ฐ๋ - repository๋ฅผ ๋ค์ ๊ฐ์ฅ ์ต์ ๋ฒ์ ์ผ๋ก ๋๋๋ฆฌ๊ณ ์ถ๋ค๋ฉด
=> git checkout master
6. ๋ณด์ถฉ Tip
- ์ง๊ธ๊น์ง commit์ ํ๋ ค๋ฉด ๋ฌด์กฐ๊ฑด add [ํ์ผ ์ด๋ฆ]->commit์ํด์ผํ์
- git add [๋๋ ํ ๋ฆฌ ์ด๋ฆ] : ํด๋น ๋๋ ํ ๋ฆฌ ์ดํ์ ๋ชจ๋ ํ์ผ์ด add ๋จ
- => git add . : ํ์ฌํด๋์ ๋ชจ๋ ํ์ผ์ด add ๋จ
- add ์ ์ปค๋ฐ์ ํ๋ฒ์ => git commit -am "[์ปค๋ฐ ๋ด์ฉ]" (a: add์ ์ฝ์)
-> ๊ทธ๋ฌ๋ ์๋ก์ด ํ์ผ์ด ์์ ๋๋ x, ๊ธฐ์กด์ ์ด๋ฏธ add๋ ์ ์ด ์๋ ํ์ผ๋ค๋ง ์์ ๋ ๊ฐ๋ฅ - ๊ทธ๋ฅ git commit ๋ง ํ ๊ฒฝ์ฐ ์ํฐ ํ ๋์ค๋ ์๋ํฐ์์ ํ ์ค ์ด์์ ์ปค๋ฐ ๋ด์ฉ ์์ฑ ๊ฐ๋ฅ
- ๊ทธ ์๋ํฐ๋ ์๊ธฐ๊ฐ ์ํ๋ ์๋ํฐ๋ก ๋ณ๊ฒฝ ๊ฐ๋ฅ
ex) git config --global core.editor "nano" -> nano ์๋ํฐ๋ก ๋ณ๊ฒฝ
7. ๋ฒ์ ์ญ์ - git reset
- git reset --hard [๋ฒ์ ๊ณ ์ ๋ฒํธ]
: ์ ๋ ฅํ ๋ฒ์ ์ผ๋ก ๋ฆฌ์ ํ๊ฒ ๋ค.
(--soft ๋ฑ์ผ๋ก ๋ฐ๊พธ๋ฉด ํ์ฌ repository๋ฅผ ์ด๋ฆด์์๋ค) - **ํ์
์ ํ ๋๋ ์ด๋ฏธ ๋ค๋ฅธ์ฌ๋๊ณผ ๊ณต์ ๋ ๋ฒ์ ์ ๋ํด์๋ ๋ฆฌ์
ํ๋ฉด ์๋!
๊ณต์ ์ ๋จ๊ณ ๋ฒ์ ๋ง ๋ฆฌ์ ํด์ผ ์ํค์ง ์์
8. ๋๋๋ฆฌ๊ธฐ - git revert
- reset๊ณผ ๋ค๋ฅด๊ฒ ์ญ์ ์ ๋ณด์กด์ ๋์์ ํ ์ ์์
- ์ฌ์ฉ : git revert [๋ฒ์ ๊ณ ์ ๋ฒํธ]
- ๋ฒ์ v1 -> v2 -> v3 -> v4 ๊ฐ ์๋ ์ํฉ์ผ ๋
v3์ผ๋ก ๋์๊ฐ๋ค๋ ๊ฐ๋ : v4๋ฅผ ๋๋๋ ค์ v3์ ๊ฐ๋ค
๋๋ฌธ์ git revert [v4 ๊ณ ์ ๋ฒํธ]๋ฅผ ํด์ผํจ - ์ดํ log๋ฅผ ํ์ธํ๋ฉด v4๊ฐ ์ฌ๋ผ์ง๋ ๊ฒ์ด์๋๋ผ
revert "v4"๋ผ๋ ๋ฒ์ ์ด ๋ค์ ์๊น์ผ๋ก์จ v3์ผ๋ก ๋์๊ฐ๋ ๊ฒ - ์ฝ๊ฒ ๋งํด์ v3->v4์ ๋ณ๊ฒฝ์ฌํญ์ ์ ๊ฑฐํจ์ผ๋ก์จ v3์ผ๋ก ๋์๊ฐ
- ๋ฐ๋ผ์ v1์ผ๋ก ๋์๊ฐ๊ณ ์ถ๋ค๋ฉด,
revert v4 -> revert v3 -> revert v2์ ๊ฐ์ด
์์ฐจ์ ์ผ๋ก revert๋ฅผ ํด์ผ ์ถฉ๋ x
9. ์์ ์ ๋ง์น๋ฉฐ
- diff tool: ๋ฒ์ ๋น๊ต
- .gitignore: ๋ฒ์ ๊ด๋ฆฌ๋ฅผ ํ์ง ๋ง์์ผํ ํ์ผ ๊ด๋ฆฌ
->.gitignore๋ผ๋ ํ์ผ์ ๋ง๋ค์ด git์ด ๋ฌด์ํ ์์ํ์ผ์ด๋ ํน์ ํ์ผ๋ค์ ์ด๋ฆ์ ์ ๋๋ค.
- branch: ํ๋์ ์ ์ฅ์์์ ๋ค์ํ ์์ ๊ฐ๋ฅ
- tag: tag๋ฅผ ํตํด ๋ฒ์ ์ ๋ณต์กํ ๊ณ ์ ๋ฒํธ๊ฐ ์๋, ์์ด๋๋ ์ด๋ฆ์ผ๋ก ๊ด๋ฆฌํ ์ ์์
- backup: dropbox, google drive, one drive ์๋ผ๋ back up์ ํ์
'๐ Archive > Git' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[github ์๋ฌ] error: failed to push some refs to (1) | 2020.03.09 |
---|