git不再支援帳號密碼驗證


git在8/12停止了使用帳號密碼作為資料上傳的驗證,改為較為安全的ssh,所以假如你使用帳號密碼作為驗證會得到缺乏權限的http 403 error

解決方法是在本機端建立私鑰,在github端要使用本地端生成的公鑰,使雙方進行同步加解密機制

首先需要在本地端生成金鑰

存儲key的位置不用改動,直接enter就好,接下來會要求設置密碼,一樣可以直接enter到底

完成密碼設定以後,公鑰與私鑰式存放在/home/zach/.ssh 中,我們cd到這個資料夾底下就可以看到id_rsa:私有金鑰,與id_rsa_pub :公有金鑰

接著我們開啟公有金鑰內容,並將該內容複製來

開啟gihub頁面並點選setting

進入SSH and GPG keys選單,接著點選new ssh key並將剛剛複製的id_rsa_pub內容貼到Key欄位,取完Title後保存

這時候我們到repo程式碼頁面,點選複製clone中的ssh碼

接著我們回到終端中,cd到要push的資料夾中,假如是發布新的版本:

1. cd 到檔案位置或在檔案位置開啟終端機
2. git init # 初始化
3. git commit -m "first commit" # 建立版本
4. git checkout -b main # 建立新分支
5. git remote add origin https://github.com/WeiLin66/python-first-programe.git # 與遠端倉庫建立同步
6. git push -u origin main //把檔案推上Github倉庫,只有第一次上傳需要用這個指令
7. git push # 之後發佈使用這個指令就好

假如是更新分支到遠端倉庫:

1. git init
2. git remote add origin 你的遠端倉庫地址
3. git add .
4. git commit
5. git push -u origin master // origin為遠端倉庫名,master為本地分支名

要注意我們在與遠端倉庫進行連結時要ssh碼指令:git remote add origin <ssh>,最後就是使用熟悉的發布指令就可以了

另外若是本地repo已經使用密碼認證,但想改成ssh則輸入git remote set-url origin git@github.com:username/your-repository.git

我們查看github頁面上的ssh key發現已經被啟用了

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s

%d 位部落客按了讚: