์ ๊ทผ (์์ฝ)
๊ฐ๋ฐ์ ์ํด ์ฌ์ฉํ๋ (IDE) IntelliJ Ultimate version ๋ง๊ณ ๋ Webstorm์ด ๋ฌด์์ ๊ณต๋จ(๋น์๋ฆฌ)์ ํ์ธํ์ต๋๋ค.
๋ฐ๋ผ์ JavaScript & TypeSript ์ ์ฉ ์น ๊ฐ๋ฐ ํ๋ก์ ํธ๋ฅผ ์ํด ์ฌ์ฉ์ ํด๋ณด๋ ค๋ค๊ฐ, ์ค์ ์์ ํค๋งค์ธ(?) ์คํ ๋ฆฌ๋ฅผ ๋ด์ต๋๋ค.
๋ ๋ค JetBrains์ฌ์์ ๋ค๋ฃจ๋ IDE์ด๋ค ๋ณด๋ ํ ์ชฝ์ ํ๋ก๊ทธ๋จ์์์ settings ๊ฐ๋ค์ ๋ค๋ฅธ ํ ์ชฝ์ ํ๋ก๊ทธ๋จ์ผ๋ก ๋ชจ๋ import ๋ฅผ ํด์ฌ ์ ์์๊ณ , ๊ทธ๋ ๊ฒ ์ ๋ฌด์ฌ์ฝ settings ๊ฐ๋ค์ import ๋ฅผ ํด์ค๋ฉด์ ๋ชจ๋ ๋ฌธ์ ์ ์์์ด ์์๋ ๊ฒ ๊ฐ์ต๋๋ค.
WebStorm ๋ด VCS์ Github ๊ณ์ ์ด token์ผ๋ก ๋ก๊ทธ์ธ์ด ๋์ด์์์๋ ๋ถ๊ตฌํ๊ณ ,
ํ๋ก์ ํธ clone์ ์ํด rsa(SSH key)๋ฅผ ๋ช ํํ ์ ๋ ฅํด๋ clone์ด fail๋๋ ์ํฉ
์ฐํํ์ฌ, terminal ๋ช ๋ น์ด ์ ๋ ฅ์ผ๋ก clone์ ๋ฐ๊ณ ์ SSH ํ์์ url์ copyํด clone์ ์ฑ๊ณตํด๋
ํ๋ก์ ํธ ๋ด ๋ณ๊ฒฝ์ด๋ ฅ์ push ํ๋ คํด๋ push failed ๋๋ ์ํฉ
๋ฌด์ธ๊ฐ ํ ๊ฐ๋ ๋ฐฉํด๋ฐ๊ณ , ๋งํ์๋ ๋ฏํ ๋๋์ ์คฌ์ต๋๋ค.
๋ฌด์์ด ๋ฌธ์ ์ธ์ง ์ ๊ฒ ๊ฐ์ผ๋ฉด์๋ ๋ชจ๋ฅด๊ฒ ๋ ์ด ์ํฉ์ ํ์ด๋๊ฐ ์คํ ๋ฆฌ๋ฅผ ์ ์ด ๋ด๋ ค๊ฐ๋๋ค.
๋์์ด ๋๋ ๋ถ๋ถ์์ ํด๊ฒฐ์ ๋ณด์๊ธธ ์์ํฉ๋๋ค!
1. ๊ณ ๋ง์ง๋ง ๋ฏธ์ ๋, import
2. ์๋ฌ ๋ฐ์์ ์์ ()
(2.1). Permission denied
(2.2). Auto Fetch Fail
(2.3). Push Failed
3. ์ด๊ฑด ์ ์๋ผ? (์๊ฒฉ ์ ์ฅ์๋ก์ push)
(3.1). git push --set-upstream origin ๋ธ๋์น๋ช
(3.2). IDE VCS
4. IDE setting ์์
(4.1) Preferences (๋๋ Settings) > Tools > SSH Configurations
(4.2) Preferences (๋๋ Settings) > Appearance & Behavior > System Settings > Passwords๋ก ์ด๋
5. ํด์
(5.1). ํ๋ก๊ทธ๋จ ์คํ ํ SSH key๋ฅผ ์ฌ์ฐจ ํ์ธ
๋ฐฉ๋ฒ
1. ๊ณ ๋ง์ง๋ง ๋ฏธ์ ๋, import
IntelliJ Ultimate IDEA์์ ์ฌ์ฉํ๋ settings ๊ฐ์ ๊ทธ๋๋ก "import settings" ํด์ฃผ๊ฒ ๋ค๋ WebStorm ๊ณผ์ ์ฒซ๋ง๋จ.
์ด๊ฒ์ด '์ ๋ฃ IDEA Tool์ ์ฌ์ฉํ๋ ๋๋ค๋ฅธ ์ด์ ์ค ํ๋๊ฒ ๊ตฌ๋' ์๊ฐํ๋ฉฐ ์๋ฌด๋ฐ ์์ฌ์์ด ์งํ.
2. ์๋ฌ ๋ฐ์์ ์์
(2.1). Permission denied
(2.2). Auto Fetch Fail
(2.3). Push Failed
โ github ํ๋ก์ ํธ์ ๊ถํ์ maintain => admin ์ผ๋ก ์์ (maintain role๋ ๊ด์ฐฎ์๋ ๊ฒ..!)
โ ๋ค์ํ ๋ช ๋ น์ด ํ์ธ ๊ณผ์
eval $(ssh-agent -s)
>> Agent pid 85005
ssh -T git@github.com
>> Hi OOOO,
3. ์ด๊ฑด ์ ์๋ผ? (์๊ฒฉ ์ ์ฅ์๋ก์ push)
(3.1). git push --set-upstream origin ๋ธ๋์น๋ช
(3.2). IDE VCS
๋ค์ํ ํ ์คํธ ์ค, ์๊ฒฉ ์ ์ฅ์๋ก์ Push ๋ฅผ ์ํด์ 2๊ฐ์ง ๋ฐฉ๋ฒ ์ด์ฉ
1. ๋ช ๋ น์ด ์ ๋ ฅ => Push ์งํ ๋จ
git push --set-upstream origin ๋ธ๋์น๋ช
2. VCS ์ฌ์ฉ => Push Failed
- ๋ช ํํ rsa passphrase๋ฅผ ์ ๋ ฅํด๋ push failed๊ฐ ๋ฌ๋ ๊ฒ
1) ์น์คํฐ์์ VCS ๋ฅผ ํตํด command+k ํค๋ฅผ ๋๋ฌ commit and push๋ฅผ ์งํํ๋ฉด ์๋ ์๋ฌ๊ฐ ๋์ค๋๋ฐ Push failed git@github.com: Permission denied (publickey). Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. 2) ๋, commit ํ ํ์, git push --set-upstream origin feature/BTMS_RF0017 ์ด ๋ช ๋ น์ด๋ก push๋ฅผ ํ๋ฉด rsa์ passphrase๋ฅผ ์๊ตฌํ๋ฉด์ ์ฌ๋ฐ๋ฅด๊ฒ ์ ๋ ฅ ํ ์๊ฒฉ์ ์ฅ์์ push๊ฐ ๋ผ. ๋ ์ ํํ passphrase๋ฅผ ์ ๋ ฅํ๋๋ฐ ์ 1) ๋ฐฉ์์์๋ ์๋ฌ๊ฐ ๋ ๊น?
==> ์ฃผ๋ก SSH ์์ด์ ํธ์ WebStorm์ ์ธ์ฆ ์ค์ ์ฐจ์ด ๋๋ฌธ์ ๋๋ค.
- ํฐ๋ฏธ๋์์ git push๋ฅผ ์คํํ ๋๋ SSH ์์ด์ ํธ๊ฐ ํ์ฑํ๋์ด ์์ด, SSH ํค์ passphrase๊ฐ ์ ์์ ์ผ๋ก ๋์ํฉ๋๋ค.
- WebStorm์์ VCS ์ฌ์ฉ ์์๋ SSH ์์ด์ ํธ๊ฐ ์ ๋๋ก ์ค์ ๋์ง ์์๊ฑฐ๋, WebStorm์ด ์ ๋๋ก๋ SSH ํค๋ฅผ ์ฌ์ฉํ์ง ์์์ Permission denied (publickey) ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค. ์ด๋ SSH ํค ์ธ์ฆ์ ์คํจํ๊ณ , git@github.com: Permission denied ์๋ฌ๊ฐ ๋ฐ์ํ๋ ๊ฒ์ ๋๋ค.
1. WebStorm์์ SSH ์์ด์ ํธ ์ค์ ํ์ธ
WebStorm์ด SSH ์์ด์ ํธ๋ฅผ ์ ๋๋ก ์ฌ์ฉํ๊ณ ์๋์ง ํ์ธํด์ผ ํฉ๋๋ค. ๋ง์ฝ WebStorm์ด SSH ํค๋ฅผ ์ฐพ์ง ๋ชปํ๋ฉด, ์ธ์ฆ์ ์ํด passphrase๋ฅผ ์์ฒญํ ์ ์์ต๋๋ค.
WebStorm์์ SSH ์ค์ ์ ํ์ธํ๋ ๋ฐฉ๋ฒ:
- Preferences > Version Control > Git์ผ๋ก ๊ฐ์ธ์.
- Path to Git executable์์ git์ด ์ฌ๋ฐ๋ฅด๊ฒ ์ค์ ๋์ด ์๋์ง ํ์ธํฉ๋๋ค.
- Use credential helper๊ฐ ์ฒดํฌ๋์ด ์๋์ง ํ์ธํด ๋ณด์ธ์. ์ด ์ค์ ์ด GitHub๊ณผ์ ์ธ์ฆ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐ ๋์์ด ๋ ์ ์์ต๋๋ค.
2. WebStorm์์ SSH ํค๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ์ฌ์ฉํ๋์ง ํ์ธ
WebStorm์ ๋๋๋ก ๋ก์ปฌ ํ๊ฒฝ์ SSH ์์ด์ ํธ๋ฅผ ์ ๋๋ก ์ธ์ํ์ง ๋ชปํ ์ ์์ต๋๋ค. ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ๋ฐฉ๋ฒ์ WebStorm์์ ์ง์ SSH ํค๋ฅผ ์ฌ์ฉํ๋๋ก ์ค์ ํ๋ ๊ฒ์ ๋๋ค.
- WebStorm์์ Preferences (๋๋ Settings) > Tools > SSH Configurations๋ก ๊ฐ์ธ์.
- GitHub์ ์ฐ๊ฒฐ๋ SSH ํค๊ฐ ์ ๋๋ก ์ค์ ๋์ด ์๋์ง ํ์ธํฉ๋๋ค. ์ด ์ค์ ์ ํตํด WebStorm์ด ์ฌ์ฉํ๋ SSH ํค๋ฅผ ํ์ธํ๊ณ , ์ฌ๋ฐ๋ฅด๊ฒ ์ค์ ํ ์ ์์ต๋๋ค.
3. SSH ์์ด์ ํธ ๋ฌธ์ ํด๊ฒฐ
WebStorm์ด SSH ์์ด์ ํธ์ ์ ๋๋ก ์ฐ๋๋์ง ์์์ ๋ฐ์ํ ์ ์๋ ๋ฌธ์ ์ ๋๋ค. ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด์๋, SSH ์์ด์ ํธ๊ฐ ์คํ ์ค์ธ์ง ํ์ธํ๊ณ , WebStorm์ SSH ํค๋ฅผ ๋ช ์์ ์ผ๋ก ์ฐ๊ฒฐํด์ค์ผ ํฉ๋๋ค.
- ํฐ๋ฏธ๋์์ SSH ์์ด์ ํธ๊ฐ ํ์ฑํ ๋์ด ์๋์ง ํ์ธํ๋ ค๋ฉด ์๋ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํด๋ณด์ธ์:์ด ๋ช ๋ น์ด๋ SSH ์์ด์ ํธ๋ฅผ ์์ํ๊ณ , ํด๋น ํค๋ฅผ SSH ์์ด์ ํธ์ ์ถ๊ฐํ๋ ๋ช ๋ น์ ๋๋ค.
-
bash์ฝ๋ ๋ณต์ฌeval "$(ssh-agent -s)" ssh-add ~/.ssh/id_rsa
- WebStorm์ ๋ค์ ์์ํ ํ, VCS -> Git -> Commit and Push๋ฅผ ๋ค์ ์๋ํด ๋ณด์ธ์.
4. WebStorm์ Git ์ธ์ฆ ์ค์ ์ฌ์ค์
WebStorm์์ GitHub ์ธ์ฆ ์ ๋ณด๋ฅผ ์ฌ์ค์ ํ๋ ๊ฒ๋ ๋ฐฉ๋ฒ์ด ๋ ์ ์์ต๋๋ค. WebStorm์์ ์ธ์ฆ ์ ๋ณด๋ฅผ ์ญ์ ํ๊ณ , ๋ค์ ์ธ์ฆ ์ ์ฐจ๋ฅผ ์งํํด ๋ณด์ธ์.
- Preferences (๋๋ Settings) > Appearance & Behavior > System Settings > Passwords๋ก ์ด๋ํฉ๋๋ค.
- In KeePass๋ Native Keychain์ ์ ํํ๊ณ , ์ ์ฅ๋ GitHub ์ธ์ฆ ์ ๋ณด๋ฅผ ์ญ์ ํฉ๋๋ค.
- ๋ค์ WebStorm์ ์ฌ์์ํ๊ณ , GitHub์ ๋ํ ์ธ์ฆ ์ ๋ณด๋ฅผ ์๋ก ์ ๋ ฅํด ๋ณด์ธ์.
5. GitHub์์ SSH ํค ํ์ธ
WebStorm์์ ์ฌ์ฉํ๋ SSH ํค๊ฐ GitHub์ ์ ๋๋ก ๋ฑ๋ก๋์๋์ง ๋ค์ ํ๋ฒ ํ์ธํ๋ ๊ฒ๋ ์ข์ ๋ฐฉ๋ฒ์ ๋๋ค. ๋ง์ฝ SSH ํค๊ฐ GitHub ๊ณ์ ์ ๋ฑ๋ก๋์ง ์์๋ค๋ฉด Permission denied (publickey) ์๋ฌ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค.
- GitHub SSH Key ๋ฑ๋ก์ ํ์ธํ๋ ค๋ฉด:
- GitHub์ ๋ก๊ทธ์ธํ ํ, Settings > SSH and GPG keys์์ ๋ฑ๋ก๋ SSH ํค ๋ชฉ๋ก์ ํ์ธํ์ธ์.
- WebStorm์์ ์ฌ์ฉํ๋ ํค์ ์ผ์นํ๋์ง ํ์ธํ๊ณ , ํค๊ฐ ๋ฑ๋ก๋์ด ์์ง ์๋ค๋ฉด ์๋ก ์ถ๊ฐํด ์ฃผ์ธ์
4. IDE setting ์์
(4.1) Preferences (๋๋ Settings) > Tools > SSH Configurations
(4.2) Preferences (๋๋ Settings) > Appearance & Behavior > System Settings > Passwords๋ก ์ด๋
(4-1) ๊ธฐ์กด์ ์ถ๊ฐ ๋์ด์๋ ๊ฒ ์ ๊ฑฐ (import๋ก ํจ๊ป ๋์ด์จ ์ค์ ๊ฐ์ด ์์๋ค)
(4-2) ๊ธฐ์กด์ ์ฒดํฌ ๋ keyChain์ด ์๋๋ผ, "Do not save, Forget passwords after restart" ์ฒดํฌ!
5. ํด์
(5.1). ํ๋ก๊ทธ๋จ ์คํ ํ SSH key๋ฅผ ์ฌ์ฐจ ํ์ธ
ํด์๋ ์ดํ, ์ฌ์คํ์ํจ WebStorm์ด ๋ฐ๊ฒจ์ฃผ๋ฉฐ ๋ด๋์ ๊ฒ!
(rsa SSH key๋ฅผ ์ฌ์ ๋ ฅํ๋๋ก ํ๋ ๊ฒ!)
'๐ป DEV > ์ฐ๊ตฌ๋ชฉ๋ก' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[WebGL - regl] (์ ๋ต) WebGL ์ขํ๊ณ๋ฅผ ํฝ์ ์ขํ๊ณ๋ก ๋ณํ (0) | 2024.08.08 |
---|---|
[WebGL - regl] (2) regl ์์ ์ GLSL ์ฝ๋ ํด์ (0) | 2024.08.08 |
[WebGL - regl] (1) regl ์ด๋? (0) | 2024.08.08 |
[Figma] We can't open that file ์๋ฌ ํด๊ฒฐ (WebGL) (0) | 2023.12.13 |
[Git] SSH ํค ์์ฑํ๋ ๋ฐฉ๋ฒ & SSH ํค ์ฐพ๋ ๋ฐฉ๋ฒ (0) | 2023.11.15 |
๋๊ธ