Me encantaría usar git para alojar mi sitio web, y me encantaría una plataforma en la que pueda iniciar sesión en línea para acompañarlo (algo así como Github). Pensarías en cuyo caso, que las páginas de Github serían la ruta perfecta para mí, aunque no quiero usar las páginas de Github. Me gustaría alojar todo esto en mis propios servidores como lo hace con Github Enterprise (pero de forma gratuita).
Encontré Gitlab y me preguntaba si de todos modos puedo usar Gitlab como las páginas de Github. ¿Es posible?
web-hosting
git
Ben Watkins
fuente
fuente
Respuestas:
¡Buenas noticias!
Desde 8.3 (diciembre de 2015) GitLab tiene "Páginas de GitLab". https://about.gitlab.com/2015/12/22/gitlab-8-3-released/
Esta característica está disponible en GitLab.com (que ejecuta EE) donde puede tener repositorios gratuitos e ilimitados, públicos / privados.
Aquí hay documentación para las páginas de GitLab, que explica cómo puede alojar gratuitamente sus sitios web estáticos en GitLab. http://doc.gitlab.com/ee/pages/README.html
fuente
No estoy realmente seguro de lo que estás preguntando. Dices que quieres alojar en tu propio servidor, pero tu pregunta dice que quieres alojar como páginas de gitlab que no es tu propio servidor.
En cualquier caso, tal vez esto ayude
Esto es lo que hago
en la PC local
Ahora tengo un repositorio local. Cópialo al servidor
Ahora lo tengo en el servidor remoto.
Ahora hay una rama maestra y otra en vivo en el sitio web. Hago esto desde AFAICT, no puedes pasar a la rama actual. Así que ahora tenemos una rama "en vivo" que es actual en el control remoto y una rama "maestra" que no es
Finalmente agregue un control remoto a mi repositorio local
Ahora, cada vez que quiero actualizar el sitio web, verifico cosas en mi rama maestra local y luego ejecuto este script
El
git push
empuja mis cambios a la rama no actual en el servidor web. Losssh
registros de continuación en el servidor web y el avance rápido de los cambios en el "maestro" a la rama actual. En este caso la rama "en vivo".--ff-only
dice que falle si hay cambios en el servidor.Si hay cambios en el servidor, puedo colocarlos en mi maestro local con
Sobre más cosas. Antes de hacer nada de esto, configuro las claves SSH en el servidor remoto para no tener que escribir ninguna contraseña
Esto no tiene absolutamente ninguna conexión con github o gitlab. También podría impulsar mis cambios allí, pero no están conectados.
fuente
Hay un proyecto nodejs que implementa esto: https://github.com/Glavin001/GitLab-Pages
fuente
Con un poco de búsqueda de varias preguntas en Google, encontré una manera. Puede que no sea la mejor manera y que sea demasiado complicado, pero debería funcionar y eso es lo principal. Sin embargo, si conoce una mejor manera o puede encontrar una, ¡hágamelo saber!
Descubrí que puede implementar su código en sus servidores a través de ganchos Git. Todo lo que necesita hacer es SSH en su servidor, crear un repositorio git y luego configurar un enlace para que envíe las confirmaciones a este repositorio. Esto le permitirá enviar sus confirmaciones a sus servidores, pero no tiene nada que ver con gitlab en este momento.
El siguiente paso es agregar la url de inserción para gitlab al mismo control remoto. De esta manera, presionará tanto a gitlab como al sitio en sí cada vez. Como resultado, tanto el repositorio de gitlab como el sitio real estarán sincronizados. Aunque esto es un truco y definitivamente no es eficiente.
Encontré cómo implementar su código en sus servidores a través de git en esta publicación de blog: http://sebduggan.com/blog/deploy-your-website-changes-using-git/
Descubrí que puede agregar dos urls push a sus controles remotos en git desde esta pregunta en stackoverflow: /programming/14290113/git-pushing-code-to-two-remotes
Como dije, si puedes encontrar una mejor manera, házmelo saber. Esto funcionará, pero significa tener dos versiones del mismo código. Por supuesto, esto es muy desordenado y es un gran desperdicio del almacenamiento de su servidor.
fuente
Actualmente, lo mejor que puede hacer es hacer que GitLab CI empuje a un servidor estático como Amazon S3.
Si puede implementar con Git, la siguiente pregunta (sin resolver) es específica sobre cómo hacerlo con gitlab: /programming/14288288/gitlab-repository-mirroring
Hay una solicitud específica para eso en el rastreador de características: http://feedback.gitlab.com/forums/176466-general/suggestions/5599145-preview-render-static-html-pages-pushed-to-repos
fuente