push๊ฐ€ ์•ˆ๋œ๋‹ค.

๊ฐœ๋ฐœํ•œ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ Github์— ์˜ฌ๋ฆฌ๋ ค๊ณ  ํ•˜๋‹ˆ ์•„๋ž˜์™€ ๊ฐ™์€ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค. ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€์™€ ์ฐธ๊ณ ๋ฅผ ์œ„ํ•ด ์ œ๊ณต๋œ ํŽ˜์ด์ง€๋ฅผ ํ™•์ธํ•ด๋ณด๋‹ˆ Github์˜ ์ธ์ฆ ๋ฐฉ์‹์ด ๋น„๋ฐ€๋ฒˆํ˜ธ ๋ฐฉ์‹์—์„œ ๊ฐœ์ธ์šฉ ์•ก์„ธ์Šค ํ† ํฐ ๋ฐฉ์‹์œผ๋กœ ๋ณ€๊ฒฝ๋œ๋“ฏํ•˜๋‹ค.

$ git push origin master
remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.
remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.
fatal: unable to access 'https://github.com/madplay/~~~.git/': The requested URL returned error: 403


์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ• ๊นŒ?

์•„๋ž˜ ๋ฐฉ๋ฒ•์€ MacOS Big Sur ํ™˜๊ฒฝ ๊ธฐ์ค€์œผ๋กœ ์ง„ํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์•ก์„ธ์Šค ํ† ํฐ ๋ฐœ๊ธ‰

๋จผ์ €, ์•ก์„ธ์Šค ํ† ํฐ์„ ๋ฐ›์•„์•ผ ํ•œ๋‹ค. github์— ๋จผ์ € ์ ‘์†ํ•ด์„œ ๋กœ๊ทธ์ธํ•œ ํ›„์— ์šฐ์ธก ์ƒ๋‹จ์˜ ํ”„๋กœํ•„(Profile) ์˜์—ญ์— ์ ‘๊ทผํ•œ ํ›„์— โ€œSettingsโ€ ๋ฉ”๋‰ด๋กœ ์ง„์ž…ํ•œ๋‹ค.

open profile menu


์„ค์ • ๋ฉ”๋‰ด์—์„œ ์™ผ์ชฝ ํ•˜๋‹จ์˜ โ€œDeveloper settingsโ€โ€œ ๋ฉ”๋‰ด๋กœ ์ง„์ž…ํ•œ๋‹ค. (์•„๋ž˜ ๋ฉ”๋‰ด์—์„œ ๋ณด์ด๋Š” ๋ช‡๋ช‡ ํ•ญ๋ชฉ์€ ๊ฐœ์ธ์ ์ธ ์ •๋ณด์ด๊ธฐ ๋•Œ๋ฌธ์— ์ผ๋ถ€๋Ÿฌ ์ œ๊ฑฐํ–ˆ์Šต๋‹ˆ๋‹ค.)

github settings


๊ทธ๋‹ค์Œ์— ์•„๋ž˜ ์‚ฌ์ง„๊ณผ ๊ฐ™์ด โ€œPersonal access tokensโ€ ๋ฉ”๋‰ด์—์„œ ์ƒˆ๋กœ์šด ์•ก์„ธ์Šค ํ† ํฐ์„ ์ƒ์„ฑํ•˜๋ฉด ๋œ๋‹ค. ๊ฐ ์ž…๋ ฅ ํ•ญ๋ชฉ์— ๋Œ€ํ•œ ์„ค๋ช…์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

  • Note: ํ† ํฐ์˜ ์‚ฌ์šฉ ์šฉ๋„์— ๋งž๊ฒŒ ์ด๋ฆ„์„ ์ž…๋ ฅํ•˜๋ฉด ๋œ๋‹ค.
  • Expiration: ํ† ํฐ์˜ ๋งŒ๋ฃŒ ์ผ์ž๋ฅผ ์„ค์ •ํ•œ๋‹ค. ๋ฌด์ œํ•œ(No Expiration)์œผ๋กœ ์„ค์ •ํ•  ์ˆ˜๋„ ์žˆ์œผ๋‚˜, ์ถ”์ฒœํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ํˆดํŒ์ด ๋…ธ์ถœ๋œ๋‹ค.
  • Select scopes: ๋ถ€์—ฌํ•  ๊ถŒํ•œ์„ ์„ค์ •ํ•œ๋‹ค. ์˜ˆ์‹œ์—์„œ๋Š” ๊ฐ„๋‹จํžˆ ์ฝ”๋“œ ์ €์žฅ์†Œ๋งŒ ๊ด€๋ฆฌํ•  ๋ชฉ์ ์ด๊ธฐ ๋•Œ๋ฌธ์— โ€œrepoโ€ ์—๋งŒ ์ฒดํฌํ–ˆ๋‹ค.

new personal access token


์ž…๋ ฅ์„ ์™„๋ฃŒํ•˜๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด ์•ก์„ธ์Šค ํ† ํฐ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. โ€œMake sure to copy your personal access token now. You wonโ€™t be able to see it again!โ€๋ผ๋Š” ์•ˆ๋‚ด ๋ฉ”์‹œ์ง€์ฒ˜๋Ÿผ ๋‹ค์‹œ ํ™•์ธํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ”๋กœ ๋ณต์‚ฌํ•ด์„œ ๋ฉ”๋ชจ์žฅ์— ์˜ฎ๊ฒจ๋‘์ž.

personal access token



ํ‚ค์ฒด์ธ์— ์•ก์„ธ์Šค ํ† ํฐ ๋“ฑ๋ก

์•ก์„ธ์Šค ํ† ํฐ์€ ๋ฐœ๊ธ‰์€ ๋๋‚ฌ๋‹ค. ์ด์ œ ํ‚ค์ฒด์ธ์— ์ €์žฅ๋œ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ๋ณ€๊ฒฝํ•˜๋ฉด ๋œ๋‹ค! Spotlight๋ฅผ ํ†ตํ•ด์„œ โ€œํ‚ค์ฒด์ธ ์ ‘๊ทผโ€ ๋˜๋Š” โ€œkeychain Accessโ€๋ฅผ ๊ฒ€์ƒ‰ํ•ด์„œ ์‹คํ–‰์‹œํ‚จ ํ›„์— โ€œgithubโ€๋กœ ๊ฒ€์ƒ‰ํ•ด๋ณด์ž. ์•„๋ž˜์™€ ๊ฐ™์ด ์ธํ„ฐ๋„ท ์•”ํ˜ธ(Internet password) ํƒ€์ž…์˜ ํ‚ค๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. ๋”๋ธ”ํด๋ฆญํ•ด์„œ ์—ด์–ด๋ณด์ž.

keychain access


์•„๋ž˜์™€ ๊ฐ™์ด โ€œ์•”ํ˜ธ ๋ณด๊ธฐโ€ ํ•ญ๋ชฉ์„ ์ฒดํฌํ•œ ํ›„์— ์•ž์„  ๊ณผ์ •์—์„œ ๋ฐœ๊ธ‰๋ฐ›์€ ์•ก์„ธ์Šค ํ† ํฐ์„ ์ž…๋ ฅํ•˜๋ฉด ๋ชจ๋“  ๊ณผ์ •์€ ๋์ด๋‹ค.

enter access token



๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ์ €์žฅํ•œ ํ›„์— ๋‹ค์‹œ ํ„ฐ๋ฏธ๋„์„ ์‹คํ–‰์‹œ์ผœ github์— ์†Œ์Šค ์ฝ”๋“œ๋ฅผ push ํ•ด๋ณด๋ฉด, ์ •์ƒ์ ์œผ๋กœ ์‹คํ–‰๋˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.