[英]Git on Windows - How to authenticate with remote repo on Linux
由於Windows上通過HTTP的Git存儲庫存在一些嚴重問題,因此我們將Git“服務器”移至Linux。
假設我已經安裝了Windows的msysgit和Putty,那么在克隆,拉入和推入時如何驗證SSH連接?
如果是SSH:
.ssh
文件夾,例如C:\\Users\\Name\\.ssh
,就像在unix上一樣。 您仍然可以使用HTTP,它將(1)始終詢問用戶名和密碼,或者(2)您還可以將用戶名和密碼放入URL: https://username:password@git.mydomain.com/...
該頁面涵蓋了有關使用PuTTy進行Git公鑰身份驗證的所有內容。 簡而言之:
我建議完成本教程 。
需要注意的是,它談論的是github,因此告訴服務器有關SSH密鑰的故事是不同的。
您還打算如何管理開發人員,這也有所不同。 “問題”是SSH與真正的遠程(服務器端,我是指)用戶一起運行,這些用戶必須具有常規的Unix系統帳戶。
如果您只有少數開發人員,這沒關系。 然后,您只需要將它們全部添加到一個特殊的組(例如devel
)中,並確保使用git init --bare --shared=group
初始化服務器端的裸git init --bare --shared=group
,並使它們可組寫入並屬於該組group devel
(這可以通過在設置了“ group sticky位”並且屬於該group devel
的目錄下創建所有存儲庫來解決)。
要將開發人員密鑰的公共部分分發到服務器,您必須從字面上復制該關鍵部分並將其粘貼(從開發人員的id_rsa.pub
文件中為ASCII)到文件/home/developer/.ssh/authorized_keys
文件。 如果該文件不存在,請創建它。 如果密鑰是在安裝了OpenSSH客戶端的計算機上生成的,則可以使用ssh-copy-id
程序在一個步驟中傳輸密鑰。
這可能會變得混亂,因此您可能考慮實現虛擬化Git用戶的解決方案(就像github一樣)。 有很多選擇:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.