url модуля настройки: нет необходимости импортировать мета-теги

#go

# #Вперед

Вопрос:

Пожалуйста, рассмотрите этот вопрос:

На основе https://golang.org/doc/tutorial/call-module-code , Я уже:

 $ cat hello.go 
package main

import (
    "fmt"
    "example.com/greetings"
)

func main() {
    // Get a greeting message and print it.
    message := greetings.Hello("Gladys")
    fmt.Println(message)
}
 

и,

 $ cat go.mod 
module hello

go 1.14

replace example.com/greetings => ../greetings

require example.com/greetings v0.0.0-00010101000000-000000000000
 

Он загружает greetings модуль из моей локальной папки и идет своим путем.

greetings В реальной жизни я часто использую этот модуль, поэтому я часто использую эту папку, чтобы использовать ее.

Чтобы избежать этого, как я могу настроить свой собственный URL-адрес этой папки и использовать его? То есть я могу скопировать эту папку, скажем, https://mywebsite.com/myGoThings/greeting на обычный сервер apache, который открыт для GETs. (Я не хочу использовать github, я бы предпочел свою собственную конечную точку https.)

Когда я пробую это, go get mywebsite.com/myGoThings/greeting жалуется: no go-import meta tags () и уходит.

Если это возможно, не могли бы вы показать мне, как это сделать?

обновление 1

Это моя папка приветствий, как в mywebsite.com/myGoThings/greeting :

 $ ls greetings/
go.mod  greetings.go  import.html
 

import.html:

 <!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en-us">
<head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8">
  <!-- Go Imports -->
  <meta name="go-import" content="GOIMPORT">
  <meta name="go-source" content="GOSOURCE">
  <meta http-equiv="refresh" content="0; REDIRECT">
</head>
<body>
</body>
</html>
    
 

Ответ №1:

Если у вас есть какой-либо пользовательский домен else github.com , gitlab.com , и т.д. Первым шагом является добавление ssh-ключа в вашу систему, а затем установка переменной среды GOPRIVATE. после выхода из системы вы можете использовать свой собственный частный репозиторий. Официальная документация golang описывает, как это сделать.

Комментарии:

1.Спасибо, Нима Горуби. пожалуйста, посмотрите Обновление, о котором идет речь. Что должно GOIMPORT GOSOURCE быть и REDIRECT должно быть в моем import.html выше? не знаком с Jekyll

2. Процесс установки значений этих переменных описан здесь: sagikazarmark.hu/blog/vanity-import-paths-in-go