Ответ 1
Я только что написал короткое пошаговое руководство о том, как я использую новый инструмент go и github.com. Вы можете найти это полезным:
1. Настройте свой GOPATH
Вы можете установить переменную окружения GOPATH
в любой каталог, который вам нравится. Если у вас более крупные проекты, вероятно, неплохо создать другой GOPATH для каждого из них. Я бы рекомендовал этот подход особенно для развертывания, так что обновление библиотеки для проекта A не нарушит проект B, который может потребовать более раннюю версию той же самой библиотеки.
Также обратите внимание, что вы можете установить GOPATH в список каталогов, разделенных двоеточиями. Таким образом, у вас может быть GOPATH, содержащий все обычно используемые пакеты, и отдельные GOPATHS для каждого проекта с дополнительными пакетами или различными версиями существующих пакетов.
Но если вы одновременно работаете над множеством разных проектов Go, его, вероятно, достаточно, чтобы иметь только один GOPATH локально. Итак, позвольте создать один:
mkdir $HOME/gopath
Затем вам нужно установить две переменные среды, чтобы сообщить go tool, где она может найти существующие пакеты Go и где она должна установить новые. Вероятно, лучше всего добавить следующие две строки к вашим ~/.bashrc
или ~/.profile
(и не забудьте перезагрузить ваш .bashrc впоследствии).
export GOPATH="$HOME/gopath"
export PATH="$GOPATH/bin:$PATH"
2. Создайте новый проект
Если вы хотите создать новый проект Go, который должен размещаться на github.com позже, вы должны создать этот проект под $GOPATH/src/github.com/myname/myproject
. Важно, чтобы путь соответствовал URL-адресу репозитория github.com, поскольку инструмент go будет следовать одному и тому же соглашению. Итак, создайте корень проекта и инициализируйте новый репозиторий git там:
mkdir -p $GOPATH/src/github.com/myname/myproject
cd $GOPATH/src/github.com/myname/myproject
git init
Поскольку мне не нравится вводить такие длинные пути, я обычно создаю символические ссылки для проектов, над которыми я сейчас работаю в своей домашней папке:
ln -s $GOPATH/src/github.com/myname/myproject ~/myproject
3. Напишите свое приложение
Начните кодирование и не забудьте git add
и git commit
ваши файлы. Кроме того, не используйте относительный импорт, например import "./utils"
для подпакетов. Они в настоящее время недокументированы и не должны использоваться вообще, потому что они не будут работать с инструментом go. Вместо этого используйте импорт, например github.com/myname/myproject/utils
.
4. Опубликуйте свой проект
Создайте новый репозиторий в github.com, загрузите открытый SSH-ключ, если вы еще этого не сделали, и нажмите свои изменения в удаленном репозитории:
git remote add origin [email protected]:myname/myproject.git
git push origin master
5. Продолжайте работать над своим проектом
Если вы установили GOPATH в свой .bashrc, и если вы создали символическую ссылку на свой проект в своей домашней папке, вы можете просто набрать cd myproject/
и отредактировать некоторые файлы там. Впоследствии вы можете зафиксировать изменения с помощью git commit -a
и отправить их в github.com, выполнив git push
.