「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > 個人用 Git リポジトリで「go get」が失敗するのはなぜですか?どうすれば修正できますか?

個人用 Git リポジトリで「go get」が失敗するのはなぜですか?どうすれば修正できますか?

2024 年 11 月 20 日に公開
ブラウズ:658

Why Does \

個人 Git リポジトリでの "go get" の使用

パッケージの 1 つを、個人用 VPS では、「パッケージ example.com/user/package: 認識されないインポート パス」というエラーが発生する場合があります。この問題は、「go help importpath」ドキュメントに従って一見正しい設定を行った後でも発生します。

解決策は、「go get」リクエストに応答して特定のメタ タグを返すようにサーバーを設定することです。特に nginx サーバーの場合、次の書き換えルールを使用できます:

location ~ "(/[^/] /[^/] )(/.*)?" {
    if ($arg_go-get = "1") {
            echo '<html><head><meta name="go-import" content="my.domain.com$1 git git ssh://[email protected]$1"/></head></html>';
    }
    try_files $uri $uri/index.html $uri.html @gitlab;
  }

「go-get=1」引数を使用して指定された URL に対して「go get」リクエストが行われると、指定されたメタ タグが返されます。このメタ タグには、インポート パス、バージョン管理タイプ (git)、およびリポジトリの SSH URL が含まれています。

SSH URL が正しいことを確認してください。これは Go がパッケージのダウンロードとインストールに使用するものであるためです。 。 SSH の代わりに HTTPS を使用している場合は、それに応じてメタ タグを変更します。

最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3