最簡單使用 GitHub Token 存取遠端儲存庫

平時要將 git 專案複製到本機,可以使用 git clone 指令複製儲存庫:
    
git clone https://github.com/[user_name]/[project_name]
    

但是如果是私人儲存庫該怎麼辦?是不是要設定全域 Token?或是需要使用 SSH Key?下載 GitHub 應用程式?

其實有個很簡單的方式可以達成,就是在連結的前面加上 Token:
    
git clone https://[token]@github.com/[user_name]/[project_name]
    

範例:
    
git clone https://github_pat_118CRhoc7F@github.com/ruyut/ruyut
    

不過因為他是直接設定 remote 連結,所以 token 可以被使用這台電腦的人看光光:
    
git remote -v
origin  https://github_pat_118CRhoc7F@github.com/ruyut/ruyut (fetch)
origin  https://github_pat_118CRhoc7F@github.com/ruyut/ruyut (push)
    

既然這麼不安全,那我們還可以這樣使用嗎?還是只是知道一個冷知識而已?
如果使用 GitHub 的 Fine-grained personal access tokens ,可以自訂 Token 可以存取的儲存庫和權限,只要勾選 Only select repositories 並選擇儲存庫,然後把 Watching 權限開為 Read-only ,這樣這個 token 就只能讀取單一儲存庫,也沒有修改的權限。對於 會交付程式碼 的專案來說非常好用。

留言