一. 問題描述
使用如下指令推送代碼到 github :
git push origin main
根據提示輸入使用者名和密碼,報如下錯誤:
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.
根據提示資訊可以知道,github 在 2021.8.13 移除了密碼認證的支援,它建議使用 personal access token 代替密碼認證。由于提示中給出的位址無法通路,是以查閱相關文檔,下面主要記錄一下如何解決這個問題。
二. 解決方法
github docs 文檔中描述說,在使用指令行或API的時候,應該建立一個個人通路令牌(personal access token)來代替密碼,下面詳細介紹如何建立 personal access token。
建立 personal access token
登入 github
在頁面右上角點選你的頭像,然後點選 Settings
在左側邊欄中,點選開發人員設定
在左側邊欄中,單擊個人通路令牌
單擊生成新令牌
為您的令牌指定一個描述性名稱
要讓您的令牌到期,請選擇到期下拉菜單,然後單擊預設值或使用月曆選擇器
選擇您要授予此令牌的範圍或權限。要使用您的令牌從指令行通路存儲庫,請選擇repo
警告:将您的令牌視為密碼并保密。使用 API 時,将令牌用作環境變量,而不是将它們寫死到您的程式中。
在指令行上面使用令牌
獲得令牌後,您可以在通過 HTTPS 執行 Git 操作時輸入它而不是密碼。
例如,在指令行中輸入以下内容:
$ git clone https://github.com/username/repo.git
Username: your_username
Password: your_token
個人通路令牌隻能用于 HTTPS Git 操作。如果您的存儲庫使用 SSH 遠端 URL,則需要将遠端從 SSH 切換到 HTTPS。
如果系統未提示您輸入使用者名和密碼,則您的憑據可能已緩存在您的計算機上。您可以更新鑰匙串中的憑據以使用令牌替換舊密碼。
如果你想開發小程式或者app的話,可以通過第三方專業開發平台,來幫助你實作開發需求:
廈門在乎科技-專注
廈門小程式定制開發、app開發、網站開發