У меня есть этот сценарий:
#!/usr/bin/env bash
set -eo pipefail
cd "$(dirname "$BASH_SOURCE")";
pth_to_make="$GOPATH/src/ores/json-logging"
mkdir -p "$pth_to_make";
rm -rf "$pth_to_make";
ln -sf "$PWD" "$pth_to_make";
, однако этот модуль не объявлен как go модуль в go .mod ... Я вставил другую ссылку в репозиторий, чтобы проверить его .
Реальная зависимость в производстве находится по адресу:
"$GOPATH/src/github.com/oresoftware/json-logging"
, тестовый путь:
"$GOPATH/src/ores/json-logging"
Теперь я бы просто удалил реальный путь зависимости в локальном В этом случае проблема заключается в том, что он просто удаляет папку. git в репозитории, а затем мне приходится загружать ее снова.
Есть ли какой-то способ для меня использовать символическую ссылку поверх реального репо / депо? папку, но не потерять git материал? Может быть, я мог бы сделать:
mv "$GOPATH/src/github.com/oresoftware/json-logging" "/tmp/gotemp/json-logging"
# call the script above
# then when I am done:
rm -rf "$GOPATH/src/github.com/oresoftware/json-logging"
mv "/tmp/gotemp/json-logging" "$GOPATH/src/github.com/oresoftware/json-logging" # put it back
это был бы лучший путь вперед?