Bagaimana untuk Menyediakan Pakej untuk \'go get\' pada Repositori Git Peribadi?

Susan Sarandon
Lepaskan: 2024-11-03 12:28:02
asal
766 orang telah melayarinya

How to Make a Package Available for

Menggunakan "go get" pada Repositori Git Peribadi: Panduan Komprehensif

Cabaran

Percubaan untuk menyediakan pakej untuk "pergi dapatkan" pada repositori Git peribadi selalunya menghasilkan mesej ralat "laluan import tidak dikenali." Artikel ini menyediakan penyelesaian yang komprehensif untuk isu ini.

Memahami Teg META

Go memerlukan teg META dalam halaman HTML akar repositori Git yang menentukan pakej laluan import dan URL repositori. Sintaksnya adalah seperti berikut:

<meta name="go-import" content="import_path git repo_url">
Salin selepas log masuk

Menyediakan Pelayan

Untuk ciri "pergi dapatkan" berfungsi, pelayan yang mengehos repositori Git mesti dikonfigurasikan untuk mengembalikan teg META apabila permintaan dibuat dengan parameter "?go-get=1".

Konfigurasi nginx yang disyorkan

Peraturan penulisan semula nginx berikut boleh digunakan untuk mencapai ini:

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

Peraturan ini menganggap akses SSH kepada repositori Git. Jika HTTPS digunakan, ubah suai URL dengan sewajarnya.

Contoh Teg META

Meminta "http://mygit.server/group/project?go-get=1 " harus mengembalikan teg META berikut:

<meta content='mygit.server/group/project git git+ssh://[email protected]/group/project.git' name='go-import'>
Salin selepas log masuk

Menguji Pakej

Selepas mengkonfigurasi pelayan, anda boleh mengesahkan sama ada pakej tersedia untuk "go get" dengan menjalankan:

<code class="Bash">go get example.com/user/package</code>
Salin selepas log masuk

Arahan ini sepatutnya berjaya memuat turun dan memasang pakej.

Atas ialah kandungan terperinci Bagaimana untuk Menyediakan Pakej untuk \'go get\' pada Repositori Git Peribadi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan