728x90

Github ๊ณ„์ • ์ „ํ™˜

 github ๊ณ„์ •์ด ์—ฌ๋Ÿฌ ๊ฐœ์ด๊ณ  ํ•œ PC์—์„œ ์ž‘์—…ํ•  ๋•Œ "git authentication failed" ์—๋Ÿฌ๋ฅผ ๋งŒ๋‚ฌ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ฒ˜์Œ ์‚ฌ์šฉํ•˜๋Š” github์˜ ๊ณ„์ •์€ ssh ์—ฐ๊ฒฐ์ด ์ด๋ฏธ ๋˜์–ด์žˆ์–ด ๋ฌธ์ œ๊ฐ€ ์—†์ง€๋งŒ ๋‹ค๋ฅธ ํ•˜๋‚˜์˜ ๊ณ„์ •์€ ์—ฐ๊ฒฐ์ด ๋˜์–ด ์žˆ์ง€ ์•Š์•„ ์ƒ๊ธฐ๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.

 

1) Github Desktop ์ด์šฉํ•˜๊ธฐ

 github์—๋Š” terminal CLI ์‚ฌ์šฉ ๋ฐฉ์‹์ด์™ธ์— GUI๋„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. github-desktop์„ ์„ค์น˜ํ•ด ์›ํ•˜๋Š” ๊ณ„์ •์˜ Repo๋ฅผ ๊ฐ€์ ธ์˜ค๊ฑฐ๋‚˜ Push๋ฅผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. GUI์˜ ๊ธฐ๋Šฅ์ด ํŽธํ•œ ์‚ฌ๋žŒ๋„ ์žˆ์ง€๋งŒ merge, squash, ammend ๋“ฑ CLI๊ฐ€ ํŽธํ•œ ์‚ฌ๋žŒ์€ Open in Terminal์„ ํ†ตํ•ด CLI ์ž‘์—…์„ ์‹œ๋„ํ•˜๋ ค ํ•˜์ง€๋งŒ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ SSH and GPG keys ๋“ฑ๋ก์ด ๋˜์–ด ์žˆ์ง€ ์•Š์•„ ์ ‘๊ทผ์ด ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. 

https://docs.github.com/ko/desktop/installing-and-authenticating-to-github-desktop/installing-github-desktop

 

GitHub Desktop ์„ค์น˜ - GitHub Docs

GitHub Desktop์€ ์ง€์›๋˜๋Š” Windows ๋˜๋Š” macOS ์šด์˜ ์ฒด์ œ์— ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

docs.github.com

 

 

2) SSH and GPG keys ๋“ฑ๋ก

https://yjleekr.tistory.com/124

 

[git] ํ•œ ์ปดํ“จํ„ฐ์—์„œ ๊นƒํ—™ ๊ณ„์ • ์—ฌ๋Ÿฌ ๊ฐœ ์‚ฌ์šฉํ•˜๊ธฐ!

ํ•œ ์ปดํ“จํ„ฐ์—์„œ github ๊ณ„์ •์„ 2๊ฐœ ์ด์ƒ ์“ธ ๋•Œ ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ• ๊นŒ?! ์˜ˆ์ „์— ์„ค์ •ํ•ด๋†จ์—ˆ๋Š”๋ฐ, ํ„ฐ๋ฏธ๋„์ด ๋ง๊ฐ€์ง€๊ณ  ์ƒˆ๋กœ ๊น”๋ฉด์„œ ์„ค์ •์ด ๋‚ ๋ผ๊ฐ€ ๋ฒ„๋ ธ๊ธฐ์— ๋‹ค์‹œ ์ฐพ์ง€ ์•Š๊ฒŒ๋” ๊ธฐ๋กํ•ด๋‘๋ ค๊ณ  ํ•œ๋‹ค. 1. SSH Key ์ƒ

yjleekr.tistory.com

 

 ์œ„ ๋ธ”๋กœ๊ทธ์— ๋‚˜์˜จ ๋ฐฉ๋ฒ•์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. 

 

1 -  github id ๋ณ„  ssh key ์ƒ์„ฑ ๋ฐ ๋“ฑ๋ก

2 - ssh config ํŒŒ์ผ ์„ค์ • (๊ณ„์ • ๋ณ„ ssh ๋“ฑ๋ก)

3 - repo clone 

 

ssh clone

 

๊ณ„์ • ์ •๋ณด ์ „ํ™˜

  ssh ์—ฐ๊ฒฐ์ด ์™„๋ฃŒ ๋˜์—ˆ๋‹ค๋ฉด ์ด์ œ repo๋ฅผ pull ํ•˜๊ณ  push๋ฅผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. push ํ•  ๋•Œ ๊ณ„์ •์˜ ์ •๋ณด๋ฅผ "git config --list"๋กœ ํ™•์ธ ํ•ด๋ณด๋ฉด ๊ธฐ์กด์— ์‚ฌ์šฉํ•˜๋Š” user ์ •๋ณด๊ฐ€ ๋‚จ์•„ ์žˆ์Šต๋‹ˆ๋‹ค. user ์ •๋ณด๋ฅผ ๋ฐ”๊พธ์ง€ ์•Š์œผ๋ฉด contributor์— ์ž์‹ ์˜ ๊ณ„์ • ๋‘ ๊ฐœ๊ฐ€ ์˜ฌ๋ผ๊ฐ„ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.  shell script๋ฅผ ๋งŒ๋“ค์–ด ๋ฐ”๊พธ๋ ค๋Š” repo์—์„œ ์‹คํ–‰ํ•˜๋ฉด user ์ •๋ณด๋ฅผ ์‰ฝ๊ฒŒ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

# [sh git_id1.sh]
git config --global user.name "name"
git config --global user.email "email@gmail.com"

# [sh git_id2.sh]
git config --global user.name "name"
git config --global user.email "email@gmail.com"

 

๋ฐ˜์‘ํ˜•
๋‹คํ–ˆ๋‹ค