git ls-remote berjaya tetapi go get fails
Feb 14, 2024 pm 01:54 PMEditor PHP Apple menghadapi masalah apabila menggunakan bahasa Git dan Go untuk membangunkan projek: arahan git ls-remote berjaya memperoleh maklumat gudang jauh, tetapi arahan go get tidak berjaya memuat turun pakej bergantung. Masalah ini telah menyusahkan editor untuk masa yang lama Selepas percubaan berterusan dan penyahpepijatan, akhirnya saya menemui penyelesaian. Dalam artikel ini, kami akan memperkenalkan punca dan penyelesaian masalah ini secara terperinci, dengan harapan dapat membantu pembangun yang menghadapi masalah yang sama.
Kandungan soalan
Arahan git ls-remote berjaya untuk repositori seperti yang ditunjukkan di bawah.
git ls-remote https://internal.net/dir1/dir2/dir3/repo warning: redirecting to https://internal.net/dir1/dir2/dir3/repo.git/ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx head yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy refs/heads/master
Namun, apabila menggunakan go get, cmd gagal dan tidak dapat mencari repositori. Output ralat cuba mencari .git dalam 1 direktori di atas struktur repositori.
go get internal.net/dir1/dir2/dir3/repo@master go: internal.net/dir1/dir2/dir3/repo@master: invalid version: git ls-remote -q origin in /Users/{{UserId}}/go/pkg/mod/cache/vcs/xyz...: exit status 128: remote: The project you were looking for could not be found or you don't have permission to view it. fatal: repository 'https://internal.net/dir1/dir2.git/' not found
Penswastaan saya ialah
goprivate=internal.net
Apa yang saya ketinggalan di sini untuk mencapai kejayaan?
Penyelesaian
Tambahkan akhiran vcs dalam laluan modul peribadi untuk menandakan awalan akar repositori:
go get internal.net/dir1/dir2/dir3/repo.git@master
Lihat Akses terus ke modul peribadi:
Pelayan http dalaman mungkin masih diperlukan untuk menyelesaikan laluan modul ke dalam url repositori. Contohnya, apabila arahan go memuat turun modul corp.example.com/mod
时,它会向 https://corp.example.com/mod?go-get=1
发送 get 请求,并会查找存储库响应中的 url。为了避免此要求,请确保每个私有模块路径都有一个 vcs 后缀(如 .git
),标记存储库根前缀。例如,当 go 命令下载模块 corp.example.com/repo.git/mod
时,它将克隆位于 https://corp.example.com/repo.git
或 ssh://corp.example 的 git 存储库.com/repo.git
, tiada permintaan tambahan perlu dibuat.
Sila ambil perhatian bahawa akhiran vcs adalah sebahagian daripada laluan modul, jadi ia harus disertakan di mana-mana laluan modul digunakan. Termasuk:
module
perintahmodule internal.net/dir1/dir2/dir3/repo.git
Salin selepas log masukrequire
perintahrequire internal.net/dir1/dir2/dir3/repo.git v0.0.1
Salin selepas log masukImport pengisytiharan kastam
import "internal.net/dir1/dir2/dir3/repo.git/pkg/util"
Salin selepas log masuk-
Ada lagi.
Atas ialah kandungan terperinci git ls-remote berjaya tetapi go get fails. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Cara menggunakan refleksi untuk mengakses medan dan kaedah persendirian dalam golang

Petua untuk mencipta fungsi baharu secara dinamik dalam fungsi golang

Perbezaan antara ujian prestasi dan ujian unit dalam bahasa Go

Apakah perangkap yang perlu kita perhatikan semasa mereka bentuk sistem teragih dengan teknologi Golang?

Perpustakaan dan alatan teknologi Golang yang digunakan dalam pembelajaran mesin

Evolusi konvensyen penamaan fungsi golang

Peranan teknologi Golang dalam pembangunan IoT mudah alih

Bolehkah parameter pembolehubah golang digunakan untuk mengembalikan nilai fungsi?
