¿Configurando el repositorio de Git en un servidor remoto de Windows?

22

Tengo un servidor de Windows al que puedo acceder de forma local o remota a través de Internet a través de una conexión de escritorio remota, etc.

Quiero configurar un repositorio git (algo similar a "troncal" en subversion), que puede contener una serie de repositorios para múltiples proyectos.

¿Alguien sabe cómo hago para hacer esto? Quiero hacerlo usando una GUI si es posible. He seguido este tutorial de Git Bash, pero es muy largo y no es exactamente lo que busco.

Estoy usando un cliente Git llamado MSYSGIT. Con esto solo quiero poder configurar repositorios remotos y comenzar a confirmar el código fuente.

Cualquier ayuda sería muy apreciada!

Goober
fuente

Respuestas:

13

En estos días hay una función de carga "HTTP inteligente", incluso podría reemplazar el acceso SSH. No se requiere más generación de claves privadas, y la instalación debería ser más fácil, porque el componente del servidor se puede escribir en cualquier idioma de elección:

Si todo falla, también puede optar por configurar un servidor Apache y usar el git-http-backendbinario CGI estándar , consulte: ¿Cuáles son los pasos para configurar git-http-backend w / Apache en Windows?

vdboor
fuente
Tenga en cuenta que "estos días" fue hace más de 2 años. Como respuesta principal, ¿me gustaría saber si algo ha cambiado en tu mente?
RyanW
Bueno, ambos son igualmente compatibles con Linux, y ambos deben quedarse. No sé mucho sobre la situación de Windows en este momento *, aparte de eso, espero que el soporte HTTP sea la solución preferida. * como estoy principalmente en Mac / Linux "estos días";)
vdboor
Hola @vdboor, tengo una pregunta. Si estamos usando ssh, podemos tener autenticación de clave pública para que no necesitemos enviar una contraseña cada vez que queramos extraer o insertar. ¿Esta función de inicio de sesión único está disponible en el Smart Httpmétodo? Me refiero a especificar la contraseña una vez para todas las acciones push / pull en el servidor.
AmirHossein
2

Podrías considerar usar Cygwin + SSH + Gitosis para satisfacer esas necesidades, pero desafortunadamente no será un simple proceso de configuración de apuntar y hacer clic. He escrito una publicación de blog detallada sobre mis experiencias recientes (incluido el procedimiento de configuración).

En cuanto a su requerimiento para que esto sea una experiencia principalmente gráfica, recomendaría que todos sus sistemas cliente tengan instalado TortoiseGit . Esto evitará la necesidad de usar la línea de comando para agregar, confirmar, presionar / tirar, etc.

Mark Embling
fuente
¿Qué opción de cliente SSH es mejor? - El TortoisePLink one o el OpenSSH?
Goober
Cualquiera de los dos funciona, pero probablemente sea mejor usar openSSH a menos que tenga una razón para hacerlo, de lo contrario, mantenga los valores predeterminados.
Mark Embling
1

Puede configurarlo en Cygwin :

Si opta por cygwin, podría hacerlo solo en el servidor y ejecutar git-daemon bajo cygwin, pero aún usar msysgit en los clientes.

Hacer que git funcione correctamente desde cygwin

rkthkr
fuente
Cabe señalar que git-daemon solo proporciona acceso usando el protocolo git: // (no ssh o file), y es de solo lectura. Para proporcionar acceso de escritura, debe hacerse a través de ssh o el sistema de archivos (o una abstracción sobre él).
Mark Embling
Más detalles: kernel.org/pub/software/scm/git/docs/…
Mark Embling
1

Vale la pena echar un vistazo a Gogs : fácil de usar (varias opciones de instalación compatibles), multiplataforma (incluido Windows), ligero, de código abierto.

Ben Mordue
fuente
¿Lo intentaste?
Janus Troelsen
1

Aquí hay algunas opciones:

Río Lilith
fuente
No voy a darle un voto negativo sobre esto simplemente porque reveló su participación. Eso está bien, pero como un recordatorio amistoso, si todo lo que haces es publicar enlaces a este producto, entonces probablemente serás suspendido por spam. Aparte de eso, ¡bienvenido a Server Fault, le deseamos un viaje placentero :-)!
Ben Pilbrow
Soy un usuario muy activo de StackOverflow; sin embargo, esta es mi primera publicación en ServerFault. Gracias por la bienvenida :)
Lilith River
1
No es el ÚNICO método GUI, también está gitstack.com (no estoy involucrado en el proyecto y no lo he probado). También puede haber otros.
rjmunro
Tenga en cuenta que esta respuesta tiene más de un año, y gitstack solo se introdujo hace unos meses.
Lilith River
Crappy Environment en Windows ... Los pobres usuarios de Windows pagan sus dólares por un montón de basura. :) Utilice bonobogitserver.com en su lugar.
AmirHossein
0

Y aquí hay otro servidor de Windows alternativo para git: WebGitNet

cregox
fuente
0

GitStack es el que estoy evaluando actualmente.

Cuando también estoy comenzando este proceso (configurando el servidor Git en Windows), y esta discusión tiene más de un año, pensé agregar eso a la mezcla.

RyanW
fuente
0

Compruebe también Gitwin , un servidor Git habilitado para OpenSSH para Windows. Una edición gratuita también está disponible. Descargo de responsabilidad: soy el desarrollador :-)

itefix
fuente
0

Gitlab es una gran solución e incluye una interfaz basada en web. Para que funcione dentro de sus requisitos.

  1. Encienda HyperV en su servidor de Windows
  2. Haga girar una máquina virtual Linux
  3. Instale Gitlab en la VM
Eric
fuente
Gitlab toma 2 gigas de carnero, no es una idea razonable.
AmirHossein
0

Si tiene un equipo de desarrolladores 5-10, sugeriría ir con git de vainilla con ssh. Fácil de configurar y tiene ssh para proteger los datos en tránsito.

Si tiene varios equipos con una buena rotación, suponiendo que tenga el directorio activo de Windows ejecutándose, es posible que desee considerar Atlassian bitbucket. Utilizamos bitbucket principalmente para el siguiente requisito: 1. Administrar repositorios git como proyectos, donde podemos proporcionar control de acceso de autoservicio a nivel de proyecto. 2. Integración de inicio de sesión LDAP con sincronización de grupo de AD 3. Muy bajo esfuerzo administrativo

Chris Cheah
fuente
No use vainilla ssh en windows. Es basura.
AmirHossein