Git
SSH ํค ๋ง๋ค๊ธฐ
ssh-keygen
$ ssh-keygen -t rsa -b 4096 -C "rrest@icloud.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/rrest/.ssh/id_rsa):
/Users/rrest/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/rrest/.ssh/id_rsa.
Your public key has been saved in /Users/rrest/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:1iaYasPL6u/8cJY06MnhX7Z2J45cr4nz673wT8cnI20 rrest@icloud.com
The key's randomart image is:
+---[RSA 4096]----+
| |
| |
| |
| . o . |
| o = S o |
| = = + o . . |
| @ + o o . E +|
| + B +o=o*.+ +.|
| .o+*.o.=*B==o. |
+----[SHA256]-----+
~/.ssh
๊ฒฝ๋ก์ ๋ค์ ํ์ผ์ด ์์ฑ๋๋ค.
- id_rsa
- ๊ฐ์ธํค (์ง์ ๊ฒฝ๋ก
~/.ssh
์ ๋ณด๊ด)
- ๊ฐ์ธํค (์ง์ ๊ฒฝ๋ก
- id_rsa.pub
- ๊ณต๊ฐํค (๋ณต์ฌํด์ ์ ์ฅ์์ ๋ฃ์)
Parameters
- -t
- ์ํธํ ํ์
- -b
- ์์ฑํ ํค์ ๋นํธ์ (default: 2048)
- -C
- ์ฃผ์์ ๋ ฅ
๋ฆฌ๋ฒํธ (Revert)
Syntax
$ git revert {COMMIT_NUMBER}
CLI
๋ก์ปฌ ๋ธ๋์น ์์ฑ & ์ฒดํฌ์์
ํ์ฌ ๋ธ๋์น ๊ธฐ์ค์ผ๋ก ์์ฑ๋๋ค.
$ git checkout -b feature/CNST-001
๋ก์ปฌ ๋ธ๋์น ์ญ์
$ git branch -d feature/LIVEDEV-2901
์ผ๊ด์ญ์
$ git branch | grep 'feature' | xargs git branch -d
๋ก์ปฌ ์ํ ๋ณด๊ธฐ (๋ณ๊ฒฝ ํ์ผ)
$ git status
๋ก์ปฌ ์์ Staged files ๋ก ์ฌ๋ฆฌ๊ธฐ
$ git add file1 file2 file3 (...)
$ git add .
$ git add *
๋ก์ปฌ ์์ Unstaged files ๋ก ๋ด๋ฆฌ๊ธฐ
$ git reset file1 file2 file3 (...)
$ git reset *
$ git reset .
๋ก์ปฌ ์์ ๋๋๋ฆฌ๊ธฐ
Unstaged files ๋ก ๋ค์ด ์์ด์ผ ํจ
$ git checkout file1
$ git checkout *
์์ ์ปค๋ฐํ๊ธฐ
$ git commit -m '์์
๋ด์ญ'
์์ ํธ์ํ๊ธฐ
$ git push
์๊ฒฉ ๋ธ๋์น ์ ๋ฐ์ดํธ
์๋ก ์์ฑ๋ ๋ธ๋์น ์ ๋ณด๋ฅผ ๊ฐ์ ธ์จ๋ค.
$ git remote update
์๊ฒฉ ๋ธ๋์น ์ ๋ณด ๋ฆฌ์คํธ
$ git branch -r
์๊ฒฉ ๋ธ๋์น ๋ค์ด๋ก๋ & ์ฒดํฌ์์
์๊ฒฉ ๋ธ๋์น๋ ๋์ผํ ์ด๋ฆ์ผ๋ก ์ฒดํฌ์์ ํ๋ค.
$ git checkout -t origin/feature/CNST-001
$ git checkout --track origin/feature/CNST-001
๋จธ์ง ๋๋๋ฆฌ๊ธฐ (Merge Commit Revert)
๋จธ์ง ์ปค๋ฐ (Merge Commit) ์ผ๋ฐ์ ์ธ ๋ฆฌ๋ฒํธ๋ก๋ ๋ถ๊ฐ๋ฅ ํ๋ค.
-m 1
์ต์
์ ๋ฃ์ด ์ค์ผ ํ๋ค.
$ git revert -m 1 {COMMIT_NUMBER}
SSH ๋ฑ๋ก ํ ์๊ฒฉ ์ ์ ์ ํธ์ ๋น๋ฐ๋ฒํธ ๋ฌผ์ด๋ณผ๋
์๋์ ๊ฐ์ด ํค์ฒด์ธ์ ์ถ๊ฐํ๋ค.
$ ssh-add -K ~/.ssh/id_rsa
.gitignore
๊ฐ ์ ๋๋ก ๋์ํ์ง ์์๋
git ์ ์บ์๊ฐ ๋ฌธ์ ๋๋ ๊ฒ์ด๋ผ ์๋ ๋ช ๋ น์ด๋ก ์ ๋ถ ์ญ์ ํ ์ปค๋ฐ ํด์ผ ํ๋ค.
$ git rm -r --cached .
$ git add .
$ git commit -m "fixed untracked files"
์ฐธ๊ณ ์๋ฃ