servidor repositorio instalar crear configurar conectar con windows git msysgit

repositorio - instalar servidor git windows



Configurar un servidor Git con msysgit en Windows (15)

Mis amigos y yo estamos intentando configurar Git para Windows usando el tutorial Servidor Git: Gitosis y Cygwin en Windows , pero seguimos teniendo problemas.

¿Cómo sería una guía "Configurar Git Server" para Windows utilizando msysgit ?

Hay un comentario en el tutorial anterior que sugiere que no se puede hacer con msysgit porque la gitosis requiere el uso de un servidor SSH y Bash? ¿Qué es una guía paso a paso (ya que no hay una disponible)?

  1. Instalar mysisgit

  2. ?


Con respecto a la referencia a la página de Tim Davis - Configuración de un servidor Msysgit con copSSH en Windows - Lo usé para hacer funcionar un servidor Git en Windows 7 Home Premium 64.

A continuación hay una actualización / postmortem de lo que aprendí además de sus instrucciones.

Como dijo Tim Davis, este fue un proceso arduo y frustrante, al menos para mí: no soy muy bueno con la integración de este tipo, pero aprendí mucho en el proceso. Espero que mi dolor beneficie a alguien más en el futuro, porque este fue un proceso arduo.

  1. Hay un paso para copiar todos los ejecutables de Git en su directorio CopSsh bin. En lugar de copiar archivos y averiguar qué archivos son necesarios, agrega la ruta de git bin a tu ruta de git. Lo hice al modificar mi perfil .bashrc y CopSsh.

    Esto es lo que agregué a .bashrc (en su directorio de inicio CopSsh y Windows):

    gitpath = ''/ cygdrive / c / Archivos de programa (x86) / Git / bin''

    gitcorepath = ''cygdrive / c / Archivos de programa (x86) / Git / libexec / git-core''

    RUTA = $ {gitpath}: $ {gitcorepath}: $ {PATH}

    Esto es lo que agregué al perfil bash (en CopSsh etc / profile):

    gitpath = ''/ c / Archivos de programa (x86) / Git / bin''

    gitcorepath = ''cygdrive / c / Archivos de programa (x86) / Git / libexec / git-core''

    export PATH = "/ bin: $ syspath: $ gitpath: $ gitcorepath: $ winpath"

    Aquí hay algo de duplicación; me funciona, así que alguien repica en qué lugar es el correcto para modificar la ruta.

  2. Las últimas versiones de msysgit pueden no darle la pantalla para elegir el ejecutable ssh donde eliges entre Git ssh y PuTTY ssh. Tendrá que configurar GIT_SSH manualmente si usa PuTTY.

  3. No seguí una parte de las instrucciones y eso fue la instalación de Tortoise: utilicé la línea de comandos, así es como prefiero aprender un vcs como lo hice con los rcs y Subversion y encontré que funcionaba para mí. Tuve problemas con el comando de clonación con ssh. Así es como lo hice:

    Git clone usando ssh - no se puede encontrar el repositorio

    Aquí es donde me golpeé la cabeza más.

  4. El directorio de instalación de CopSsh era / Program Files (x86) / ICW. Me salí con esto, pero si lo hiciera de nuevo, usaría un nombre de directorio sin espacios.

  5. Estas otras fuentes me ayudaron a resolver las cosas:

    Otra forma de configurar un servidor Git en Windows:

    http://code.google.com/p/tortoisegit/wiki/HOWTO_CentralServerWindowsXP

    El lado del cliente de las cosas:

    http://toolmantim.com/thoughts/setting_up_a_new_remote_git_repository

    Una explicación de Git como servidor (no relacionado con Windows, pero con un aspecto más profundo que los pasos de instalación):

    http://progit.org/book/ch4-0.html

    Además del control de versiones de O''Reilly con Git : el capítulo de repositorios remotos.

En retrospectiva, si hubiera sabido que esto consumiría mucho tiempo, podría haber empezado con Mercurial mientras leo que la instalación en Windows es más fácil, pero tendré una opinión al respecto después de trabajar con Git por un tiempo y luego probar Mercurial. .


Después de seguir la guía de Tim Davis y el seguimiento de Steve, esto es lo que hice:

Servidor PC

  1. Instala CopSSH, msysgit.
  2. Al crear el usuario de CopSSH, desmarque Autenticación de contraseña y verifique la Autenticación de clave pública para que funcionen sus claves públicas / privadas.
  3. Crea claves públicas / privadas usando PuTTygen. ponga ambas claves en el directorio CopSSH / home / user / .ssh del usuario.
  4. Agregue lo siguiente al archivo CopSSH / home / user / .bashrc del usuario:

    GITPATH=''/cygdrive/c/Program Files (x86)/Git/bin'' GITCOREPATH=''/cygdrive/c/Program Files (x86)/Git/libexec/git-core'' PATH=${GITPATH}:${GITCOREPATH}:${PATH}

  5. Abre Git Bash y crea un repositorio en cualquier lugar de tu PC:

    $ git --bare init repo.git Initialized empty Git repository in C:/repopath/repo.git/

PC de cliente

  1. Instala msysgit.
  2. Use la clave privada que creó en el servidor para clonar su repositorio desde ssh: // usuario @ servidor: puerto / repopath / repo.git (por alguna razón, la raíz es la unidad C :)

Esto me permitió clonar y confirmar con éxito, pero no pude presionar al repositorio simple en el servidor. Seguí recibiendo:

git: ''/repopath/repo.git'' is not a git command. See ''git --help''. fatal: The remote end hung up unexpectedly

Esto me llevó a la pista y solución de Rui, que consistía en crear o agregar las siguientes líneas a .gitconfig en la ruta % USERPROFILE% de su PC Cliente (C: / Users / UserName).

[remote "origin"] receivepack = git receive-pack

No estoy seguro de por qué esto es necesario ... si alguien pudiera proporcionar una idea, esto sería útil.

mi versión de git es 1.7.3.1.msysgit.0



Estoy usando GitWebAccess para muchos proyectos durante medio año, y está probado que es lo mejor que he probado. Sin embargo, parece que últimamente las fuentes no son compatibles, por lo tanto, no tome los últimos binarios / fuentes. Actualmente están rotos :(

Puede compilar desde esta versión o descargar binarios compilados que utilizo desde here .


Hay una bonita pila de código abierto llamada Git Blit. Está disponible para diferentes plataformas y en diferentes paquetes. También puede implementarlo fácilmente en su Tomcat existente o en cualquier otro contenedor de servlets. Eche un vistazo a la configuración del servidor de Git en Windows en unos pocos clics de tutorial para obtener más detalles, le llevará alrededor de 10 minutos para obtener la configuración básica.


Hice lo que Bob Murphy sugirió que era la opción "difícil".

Instalé Ubuntu en VMWare Server (gratis) en el trabajo y luego seguí esta guía sobre la configuración de Gitosis. Lo encontré mucho más fácil que intentar ponerlo en funcionamiento en Windows. Una vez que está configurado, no tiene que tocarlo porque la administración de Gitosis se puede hacer desde Windows presionando las versiones actualizadas del archivo gitosis.conf. Cualquier trabajo que necesite hacer en el servidor directamente se realiza a través de PuTTY, así no tengo que usar la horrible interfaz del servidor VMWare.

Recientemente he estado jugando con VirtualBox en casa y he encontrado que es mucho más fácil trabajar con él que con VMWare Server, por lo que puede valer la pena analizarlo.


No estoy seguro de por qué nadie ha sugerido http://gitblit.com . Solución pura basada en Java, permite el protocolo HTTP y es realmente fácil de configurar.


No necesitas SSH para compartir git. Si está en una LAN o VPN, puede exportar un proyecto git como una carpeta compartida y montarlo en una máquina remota. A continuación, configure el repositorio remoto utilizando las URL "file: //" en lugar de las URL "git @". Toma todos los 30 segundos. ¡Hecho!


Simplemente no puede haber tal guía. Si es así, puede que no tengas mucha suerte convenciendo a alguien para que escriba uno, porque sería mucho trabajo.

Yo recomendaría cualquiera de dos cosas. El más fácil es seguir la guía que tienes servilmente, lo que significa olvidarte de msysgit.

El más difícil es instalar un servidor Linux, quizás como invitado en Windows usando VirtualBox (gratis) o VMWare o Parallels (pago), y luego siga uno de los muchos conjuntos de instrucciones que Google le guiará. Pero probablemente encontrará que esas instrucciones son insuficientes; por lo general, asumen que ya ha configurado un servidor ssh, por ejemplo, por lo que debe obtener esa información en otro lugar. Lo he hecho dos veces, y puedo decir que a menos que ya seas algo así como un gurú de Linux, será una lucha.


Solo quería agregar mis experiencias con la configuración PATH que Steve y Timc mencionan arriba: obtuve problemas de permiso al usar herramientas de shell (como mv y cp ) teniendo los ejecutables de shell de Git primero en la ruta.

Anexándolos después de la RUTA existente, en su lugar, esto resolvió mis problemas. Ejemplo:

GITPATH=''/cygdrive/c/Program Files (x86)/Git/bin'' GITCOREPATH=''/cygdrive/c/Program Files (x86)/Git/libexec/git-core'' PATH=${PATH}:${GITPATH}:${GITCOREPATH}

Supongo que CopSSH no va bien con todos los ejecutables de shell de msysgit ...


Una solución más es Gitwin : un servidor de repositorio Git habilitado para Openssh para Windows. Una edición gratuita está disponible.


Utilicé la herramienta en http://www.windowsgit.com como Computer Linguist sugirió después de probar (y fallar) con los métodos anteriores. Fue ridículamente fácil y solo funcionó. Bien vale la pena los $ 9, IMO.


GitStack debe cumplir su objetivo. Tengo una configuración de asistente. Es gratis para 2 usuarios y tiene una interfaz de usuario basada en la web. Está basado en msysgit.


Servidor Bonobo Git para Windows

Desde la página web del servidor Bonobo Git :

Bonobo Git Server para Windows es una aplicación web que puedes instalar en tu IIS y administrar y conectar fácilmente a tus repositorios de git.

Bonobo Git Server es un proyecto de código abierto y puedes encontrar la fuente en github .

caracteristicas:

  • Acceso seguro y anónimo a tus repositorios git
  • Interfaz web amigable para el usuario para la administración
  • Gestión de acceso al repositorio basada en el usuario y el equipo
  • Navegador de archivos de repositorio
  • Commit navegador
  • Localización

Brad Kingsley tiene un buen tutorial para instalar y configurar el Servidor Bonobo Git.

GitStack

Git Stack es otra opción. Aquí hay una descripción de su sitio web:

GitStack es un software que le permite configurar su propio servidor privado de Git para Windows. Esto significa que usted crea un sistema de versiones de vanguardia sin ningún conocimiento previo de Git. GitStack también hace que sea muy fácil de asegurar y mantener su servidor actualizado. GitStack está construido en la parte superior del Git original para Windows y es compatible con cualquier otro cliente de Git. GitStack es completamente gratuito para equipos pequeños 1 .

1 la edición básica es gratuita para hasta 2 usuarios