์ ๊ทผ (์์ฝ)
ํ์๊ด๋ฆฌ ํด Github ์๊ฒฉ์ ์ฅ์์์ ํน์ ํ๋ก์ ํธ๋ฅผ Pull ๋ฐ์์ผํ๋ ์ผ์ ๋น๋ฒํฉ๋๋ค.
Pull์ ๋ฐ๋ ๋ฐฉ๋ฒ์ผ๋ก๋ ํฌ๊ฒ 'HTTPS' ๋ฐฉ์๊ณผ 'SSH(key)' ๋ฐฉ์์ผ๋ก ๊ตฌ๋ถํ ์ ์์ต๋๋ค.
๊ธฐ์กด์ 'HTTPS' ๋ฐฉ์์ผ๋ก ํฐ ์ธ์ฆ ๊ณผ์ ์์ด ์ฝ๊ฒ ํ๋ ๊ณผ์ ์, Github์์๋ ์ง์ํ๋ผ๊ณ ๊ถ๊ณ ํ๊ณ ,
๋ณด์์ ๋์ฑ ์ ๋ฆฌํ๊ณ ๊ฐ๋ ฅํ 'SSH(key)' ๋ฐฉ์์ ์ถ์ฒํ๊ณ ์ฌ์ฉํ๊ธธ ๊ถ์ฅํ์ต๋๋ค.
๋ฐ๋ผ์, ์ด ๋ฐฉ๋ฒ์ ์ ๊ทผํด๋ณด๊ณ ์ ํฉ๋๋ค.
1. Git > ๋ก๊ทธ์ธ > ์ฐ์๋จ Profile > settings > "SSH and GPG keys"
2. SSH ํค ์กฐํ (์์ฑํ์๋? ๋ก์ปฌ์ ์๋?)
(2.1). (๋ก์ปฌ) SSH ํค ์กฐํ (์ด๋์๊ฐ ์กด์ฌํ ๊ฒ์ด๋ผ๋ ๊ณผ๊ฑฐ ๊ธฐ์ต..)
3. SSH ํค ์์ฑ
(3.1). SSH ํค ์์ฑ (Create)
(3.2). SSH ํค ๋ณต์ฌ (Copy)
(3.3). SSH ํค ์ญ์ (Delete)
4. SSH ํค ์ฌ๋ฐ๊ธ์ ํ์์ฑ
(4.1) ๋ณด์ ์ธก๋ฉด
(4.2) ์ก์ธ์ค ๊ด๋ฆฌ
(4.3) ํค์ ์ ํจ์ฑ ํ์ธ
(4.4) ์ต์ ๋ณด์ ๊ธฐ์ ์ ์ฉ
(4.5) ์ปดํจํฐ๋ ์ฅ์น ์์ค์ ๋ํ ๋๋น
5. SSH ํค ์ฌ๋ฐ๊ธ ์ดํ known_hosts ์ ๋ฐ์ดํธ
(5.1).
๋ฐฉ๋ฒ
1. Git > ๋ก๊ทธ์ธ > ์ฐ์๋จ Profile > settings > SSH and GPG key
2. SSH ํค ์กฐํ (์์ฑํ์๋? ๋ก์ปฌ์ ์๋?) => git bash ์ด์ฉ
(2.1). (๋ก์ปฌ) SSH ํค ์กฐํ (์ด๋์๊ฐ ์กด์ฌํ ๊ฒ์ด๋ผ๋ ๊ณผ๊ฑฐ ๊ธฐ์ต..)
ls ~/.ssh
์ ๋ช ๋ น์ด๋ฅผ ํตํด 'id_rsa' , 'id_rsa.pub' ๋ผ๋ ํ์ผ, ์ฆ ๊ธฐ์กด์ SSH ํค ํ์ผ์ ํ์ธํ ์ ์์ต๋๋ค.
3. SSH ํค ์์ฑ
(3.1). SSH ํค ์์ฑ (Create)
- SSH ํค ๋ฐ๊ธ์ ์ฌ๋ถ๋ฅผ ์์ง ๋ชปํ ์ฑ ๋ฌด์์ ์์ฑํ๋ ค๋ ์ฐฐ๋์ ์ด๋ฏธ ์์ฑ๋์๋ ์ด๋ ฅ์ด ์กฐํ๋์ต๋๋ค.
(์ญ์ ํ ์์ฑ์ ํ ํ ์ง๋ง) ๋จผ์ ์์ฑ๋ง์ ์ํ ๋ช ๋ น์ด๋ฅผ ์์๋ณด์๋ฉด, ์๋์ ๊ฐ์ต๋๋ค.
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
## "์์ ์ ๊น ๊ณ์ (๋ฉ์ผ)"
์ ์ฝ๋๋ฅผ ์ฌ์ฉํด SSH(key)ํ์ผ์ ์์ฑํ๊ณ ๋๋ฉด [2] ๋ฒ์์ ์งํํ๋ ๋ช ๋ น์ด๋ฅผ ํตํด ์กฐํํ๋ฏ, ์กฐํ๊ฐ ๋ฉ๋๋ค.
+ ๋ช ๋ น์ด ์ดํ ๋ฑ์ฅํ๋ Enter passphrase ๋ SSH ํค์ ๋ํ ์ํธ(๋๋ ๋น๋ฐ๋ฒํธ)๋ฅผ ์ค์ ํ๋ ๋ถ๋ถ์ ๋๋ค.
(3.2). SSH ํค ๋ณต์ฌ (Copy) - ๊ณต๊ฐํค
cat ~/.ssh/id_rsa.pub
๊ณต๊ฐํค๋ฅผ ๋ณต์ฌํ๊ธฐ ์ํด์ , ์์ ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์ถํ ๋ถ์ฌ๋ฃ์ ํ์์ฑ์ด ์์ผ๋ ๊ธฐ์ตํด๋ก์๋ค.
(3.3). SSH ํค ์ญ์ (Delete)
- ์ญ์ ๋ฅผ ์ํด์๋ ๊ฐ ํ์ผ์ ๋ํด rm ๋ช ๋ น์ด๋ฅผ ์งํํด์ฃผ์ ์ผ ํฉ๋๋ค.
rm ~/.ssh/id_rsa
rm ~/.ssh/id_rsa.pub
4. SSH ํค ์ฌ๋ฐ๊ธ์ ํ์์ฑ
SSH ํค๋ ๋ณด์ ์์ ์ด์ ๋ก ์ผ์ ๊ธฐ๊ฐ๋ง๋ค ๋ณ๊ฒฝํ๋ ๊ฒ์ด ๊ถ์ฅ๋ฉ๋๋ค. ๊ธฐ์กด์ ํค๋ฅผ ๊ณ์ ์ฌ์ฉํ๋ ๊ฒ๋ณด๋ค ์ฃผ๊ธฐ์ ์ผ๋ก ์๋ก์ด ํค๋ฅผ ๋ฐ๊ธ๋ฐ์ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ณด์์ ๊ฐํํ ์ ์์ต๋๋ค. ์ด์ ๋ํ ๋ช ๊ฐ์ง ์ด์ ์ ์ฅ์ ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
(4.1) ๋ณด์ ์ธก๋ฉด
SSH ํค๋ฅผ ์ฃผ๊ธฐ์ ์ผ๋ก ๋ฐ๊พธ๋ฉด, ๊ธฐ์กด์ ์ ์ถ๋ ํค์ ๋ํ ๋ณด์ ๋ฌธ์ ๋ฅผ ์ต์ํํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ํค๊ฐ ์ ์ถ๋์๋ค๊ณ ๊ฐ์ง๋๋ฉด ํด๋น ํค๋ฅผ ๋นํ์ฑํํ๊ณ ์๋ก์ด ํค๋ก ๊ต์ฒดํ ์ ์์ต๋๋ค.
(4.2) ์ก์ธ์ค ๊ด๋ฆฌ
ํ์์ ๋ฉค๋ฒ์ ์ก์ธ์ค๊ฐ ๋ณ๊ฒฝ๋๊ฑฐ๋ ํ์์ ๋ ๋ ๊ฒฝ์ฐ, ํด๋น ์ฌ์ฉ์์ ํค๋ฅผ ๋นํ์ฑํํ๊ณ ์๋ก์ด ํค๋ฅผ ๋ฐ๊ธํ์ฌ ํด๋น ์ฌ์ฉ์์ ์ก์ธ์ค๋ฅผ ์ ํํ๊ฒ ๊ด๋ฆฌํ ์ ์์ต๋๋ค.
(4.3) ํค์ ์ ํจ์ฑ ํ์ธ
ํค๋ฅผ ์ ๊ธฐ์ ์ผ๋ก ๊ฐฑ์ ํ๋ฉด ํด๋น ํค๋ฅผ ์ฌ์ฉํ๋ ์์คํ
์ด ์ฌ์ ํ ์ ํจํ์ง ํ์ธํ ์ ์์ต๋๋ค. ๋ง์ฝ ํค์ ์ ํจ๊ธฐ๊ฐ์ด ๋ง๋ฃ๋์๋ค๋ฉด, ์ด๋ฅผ ๊ฐฑ์ ํ์ฌ ์๋ํ๋๋ก ์ ์งํ ์ ์์ต๋๋ค.
(4.4) ์ต์ ๋ณด์ ๊ธฐ์ ์ ์ฉ
์๋ก์ด ํค๋ฅผ ์์ฑํ ๋๋ง๋ค ์ต์ ์ ๋ณด์ ๊ธฐ์ ์ด ์ ์ฉ๋ฉ๋๋ค. ์๋ก์ด ์๊ณ ๋ฆฌ์ฆ์ด๋ ํฅ์๋ ์ํธํ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ์ฌ ํค๋ฅผ ์์ฑํ๋ฉด ๋ณด์ ์์ค์ด ํฅ์๋ฉ๋๋ค.
(4.5) ์ปดํจํฐ๋ ์ฅ์น ์์ค์ ๋ํ ๋๋น
๊ฐ์ธ ํค๊ฐ ๋
ธ์ถ๋๊ฑฐ๋ ์์ค๋ ๊ฒฝ์ฐ, ํด๋น ํค๋ก ์ก์ธ์คํ ์ ์๋ ๋ชจ๋ ์์คํ
์ ๋ณด์์ด ์ํ์ ์ฒํ ์ ์์ต๋๋ค. ์ ๊ธฐ์ ์ผ๋ก ํค๋ฅผ ๋ณ๊ฒฝํ๋ฉด ์์ค ๋๋ ์ ์ถ์ ์ํฅ์ ์ต์ํํ ์ ์์ต๋๋ค.
๋ฐ๋ผ์ ์ฃผ๊ธฐ์ ์ผ๋ก ์๋ก์ด SSH ํค๋ฅผ ๋ฐ๊ธ๋ฐ์ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ณด์ ๋ฐ ์ก์ธ์ค ๊ด๋ฆฌ์ ์ธก๋ฉด์์ ์ข์ ๊ดํ์ ๋๋ค. ์ด๋ฅผ ํตํด ์์คํ ๊ณผ ๋ฐ์ดํฐ๋ฅผ ๋์ฑ ์์ ํ๊ฒ ๋ณดํธํ ์ ์์ต๋๋ค.
5. SSH ํค ์ฌ๋ฐ๊ธ ์ดํ known_hosts ์ ๋ฐ์ดํธ
'id_rsa' ํ์ผ๊ณผ 'id_rsa.pub' ํ์ผ์ ์์ฑํ๊ณ ์ญ์ ํ๊ณ , ๋ณต์ฌํ๋ ๊ทธ๋ฌํ ๊ณผ์ ์ ์๊ฒ ์ผ๋, ๋์ผ ๊ฒฝ๋ก์ ํจ๊ป ์กด์ฌํ๋ 'known_hosts' ํ์ผ์ ๋ํ ํ์ ๊ณผ ๊ด๋ฆฌ ๋ํ ๊ถ๊ธํด์ก์ต๋๋ค.
"known_hosts" ํ์ผ : SSH ํด๋ผ์ด์ธํธ๊ฐ ์ ์ํ๋ ์๋ฒ์ ํธ์คํธ ํค๋ฅผ ๊ธฐ๋กํ๋ ํ์ผ์ ๋๋ค. ์ด ํ์ผ์ ๋ณด์์์ ์ด์ ๋ก ํธ์คํธ์ ์ ์์ ํ์ธํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
SSH ํค๋ฅผ ๋ณ๊ฒฝํ๋ฉด, ์๋ก์ด ํธ์คํธ ํค์ ๋ํ ์ ๋ณด๋ฅผ known_hosts ํ์ผ์ ์
๋ฐ์ดํธํด์ผ ํฉ๋๋ค.
๋ฐ๋ผ์ SSH ํค๋ฅผ ์ญ์ ํ๊ณ ์๋ก ๋ฐ๊ธ๋ฐ๋ ๊ฒฝ์ฐ์๋ ๊ธฐ์กด์ known_hosts ํ์ผ๋ ์
๋ฐ์ดํธํด์ผ ํฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด SSH ํด๋ผ์ด์ธํธ์์ ํธ์คํธ ํค๊ฐ ๋ณ๊ฒฝ๋์๋ค๋ ๊ฒฝ๊ณ ๊ฐ ๋ํ๋ ์ ์์ต๋๋ค.
์๋ก์ด SSH ํค๋ฅผ ์์ฑํ ํ์๋ ๋ค์๊ณผ ๊ฐ์ด ssh-keyscan ๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ํธ์คํธ์ ์๋ก์ด ํค๋ฅผ ๊ฐ์ ธ์ฌ ์ ์์ต๋๋ค:
ssh-keyscan github.com >> ~/.ssh/known_hosts
์ ๋ช
๋ น์ด๋ GitHub์ ํธ์คํธ ํค๋ฅผ ๊ฐ์ ธ์์ ๊ธฐ์กด์ known_hosts ํ์ผ์ ์ถ๊ฐํฉ๋๋ค. ํธ์คํธ๊ฐ GitHub์ด ์๋๋ผ ๋ค๋ฅธ ๊ฒฝ์ฐ์๋ ํด๋น ํธ์คํธ์ ๋ํ ์๋ก์ด ํธ์คํธ ํค๋ฅผ ๊ฐ์ ธ์์ ์
๋ฐ์ดํธํ๋ ๋ฐฉ์์ผ๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค.
๋ค์ ๊ฐ์กฐํ์๋ฉด, ํธ์คํธ ํค๋ฅผ ๋ณ๊ฒฝํ๋ฉด ํด๋น ํธ์คํธ์ ๋ํ ๊ธฐ์กด์ known_hosts ํ์ผ์ ์
๋ฐ์ดํธํด์ผ ํ๋ฉฐ, ์ด๋ฅผ ํตํด ํด๋ผ์ด์ธํธ์์ ์์ ํ๊ฒ ํธ์คํธ์ ์ฐ๊ฒฐํ ์ ์์ต๋๋ค.
์ด์์ผ๋ก, Git pull ๋์ SSH ๋ฐฉ์์ผ๋ก ์งํํ๋ฉฐ ๊ฒช์ ๊ณผ์ ์ ํ์ตํด๋ดค์ต๋๋ค.
์ถ๊ฐ ์ง๋ฌธ์ ๋๊ธ์ ๋ฌ์์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋ค^^
์ค๋๋ ํ์ดํ ์ ๋๋ค!
'๐ป DEV > ์ฐ๊ตฌ๋ชฉ๋ก' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[WebGL - regl] (1) regl ์ด๋? (0) | 2024.08.08 |
---|---|
[Figma] We can't open that file ์๋ฌ ํด๊ฒฐ (WebGL) (0) | 2023.12.13 |
[Tomcat] Tomcat ํฌํธ ๋ฒํธ ์ฌ๋ฌ ๊ฐ ์ฌ์ฉํ๊ธฐ, ์ถ๊ฐํ๊ธฐ(windows) (0) | 2023.07.19 |
[Status] HTTP ์๋ต ์ํ ์ฝ๋ ๋ชจ์ (0) | 2023.03.08 |
[Spring Boot] (์์ฑ์ค)war ํ์ผ ๋ฐฐํฌํ๊ธฐ (์ธ๋ถ, ์ธ์ฅ ํฐ์บฃ) (0) | 2023.02.01 |
๋๊ธ