簡體   English   中英

Github身份驗證:當repo是私有時,如何使用Github作為Maven repo

[英]Github authentication: how to use Github as Maven repo when repo is private

我正在嘗試將一些私有工件存儲在Github上,並希望訪問它們,就像它們是Maven倉庫的一部分一樣。 有很多頁面解釋了如何在Github上創建公共Maven倉庫:您只需將工件放在項目中的正確目錄結構中,然后使用“原始”URL訪問它們:

<repositories>
  <repository>
    <id>myrepo.myname.github.com</id>
    <url>https://github.com/myname/myproject/raw/master/repositories/releases/</url>
  </repository>
</repositories>   

到現在為止還挺好。 現在麻煩的是,如果它是私有的,我無法弄清楚如何訪問回購。 我已經在settings.xml中添加了用戶名和密碼,但它不起作用:

<servers>
    <server>
      <id>myrepo.myname.github.com</id>
      <username>myusername</username>
      <password>mypassword</password>
    </server>
 </servers>

有什么訣竅?

這個問題現在沒有實際意義。 Github已經取消了下載量。 他們不再托管二進制文件了。 可能是因為我提出的那種濫用行為......

我也從未這樣做過。 但github允許ssh / key身份驗證,這可能有用嗎?

<servers>
    <server>
        <username/>
        <password/>
        <privateKey/>
        <passphrase/>
        <filePermissions/>
        <directoryPermissions/>
        <configuration/>
        <id/>
    </server>
</servers>

在GitHub上,您可以將密鑰(至少看起來如果可能)添加到該存儲庫(存儲庫 - >管理 - >部署密鑰): https//help.github.com/articles/managing-deploy-keys

幾年前我在安裝存儲庫代理之前使用ssh在linux服務器上部署了工件。 在客戶端設置(可信密鑰等)有點棘手,但它工作得很好。 我記得你需要手動執行mvn deploy ,才能在本地添加服務器密鑰/指紋,然后才能由腳本或CI服務器自動完成。

您可以使用以下URL從Maven pom.xml訪問私有存儲庫: https ://api.github.com/users/username/repos?login =username &token = anothertoken&repositoryname =reameame

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM