En ocasiones tenemos la necesidad de tener librerías provenientes de repositorios privados en GO, como por ejemplo librerías propietarias de la empresa, proyectos que aun estén en Sealthy Mode o funciones que no podemos exponer al publico en general.
Esto en GO puede generar problemas sobre todo al momento de querer descargar nuestra librería ya que se necesita de un proceso de autenticación de nuestra cuenta de Github.
Vamos a proceder a descargar una librería de un repositorio de GitHub privado.
PD: Dejo el repositorio con la librería de ejemplo (Como publica), la cual puedes hacer un fork a tu cuenta de GitHub y volverla privada para hacer al prueba con ella.
Generar token de autenticación en GitHub
En nuestra cuenta de GitHub ingresar a la sección de Settings > Profile > Developer Settings >Personal access token
Generar un personal access token y asignarle permisos full access private repo.
Copiarlo en algún block de notas de manera temporal, se usara mas tarde. Este token no lo vuelve a mostrar GitHub.
En la terminal dentro de la carpeta de nuestro proyecto en GO
Configuramos el token en Git
git config --global url."https://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:x-oauth-basic@github.com/".insteadOf "https://github.com/"
git config --global --add url."git@github.com:".insteadOf "https://github.com/"
Agregamos una variable de ambiente en nuestro sistema para que GO reconozca el repositorio aunque sea privado y vaya a buscarlo. Cambiar el valor GOPRIVATE por tu repositorio personal
export env GOPRIVATE=github.com/luigiescalante
Proceder a descargar en tu proyecto en GO
go get github.com/luigiescalante/package-helloworld
Ya puedes usar la librería privada dentro de tu proyecto en GO, Ejemplo:
Top comments (0)