visual usar subir studio proyecto para instalar configurar con como code git visual-studio visual-studio-2015 version-control

usar - subir proyecto a github visual studio 2017



Control de fuente de Visual Studio Git sin Git para Windows o la extensión de Github (2)

En Team Explorer, me pide que instale herramientas git de terceros, no pretendo utilizar la línea de comandos de Git, solo la GUI nativa de Visual Studio para clonar, extraer, confirmar, sincronizar, fusionar y quizás emitir solicitudes de extracción.

Entonces, ¿necesito instalar herramientas de comandos de Git de terceros (o la extensión de Github)? porque ya instalé 2.10.1 y no noté nada diferente. ¿Qué gano si lo hago y qué pierdo si no lo hago, porque quiero una instalación limpia y mínima, y ​​todos los tutoriales y documentos que aparecen ahí dan por hecho que tengo que instalarlos?


No, no necesitas un cliente git de terceros (el Git para Windows debería hacerlo). Pero algunos comandos no están disponibles a través de Visual Studio (todavía), por ejemplo, no se puede verificar el reflog y no se puede forzar.

Después de instalar Git para Windows, asegúrese de que su ruta de instalación esté en la variable de entorno PATH y de que reinicie Visual Studio después de instalarlo.

Es posible que Visual Studio no lo detecte, si su versión es mucho más nueva de lo que estaba disponible cuando se envió su versión de Visual Studio. En su caso, asegúrese de que también tenga instalada la Actualización 3 de Visual Studio 2015.

Algunos antecedentes:

Visual Studio 2013 y 2015 se envían con LibGit2 y LibGitSharp. LibGit2 es una biblioteca que implementa la mayor parte de la funcionalidad estándar de Git en una biblioteca multiplataforma C / C ++. LibGitSharp es un contenedor administrado alrededor de eso. No todos los comandos se implementan directamente en LibGit2, no todo lo que LibGit2 está expuesto directamente en LibGitSharp.

La integración nativa tiene ventajas y desventajas. Si bien es más rápido para una manipulación directa sobre el bombardeo a git.exe, también hace que la administración de la memoria sea mucho más difícil. Además, cualquier bloqueo o pérdida de memoria en la integración nativa podría ralentizar o eliminar todo Visual Studio.

Al hacer que la interacción con git fuera de proceso, cada operación se ejecuta en su propio pequeño proceso y si eso falla o no libera su memoria durante la ejecución, el comando fallará, pero Visual Studio simplemente verá que git.exe es cerrándose inesperadamente sin que también se cuelgue.

Además, tomando una dependencia directamente en git.exe, cualquier cosa que sea posible desde la línea de comandos de git es relativamente fácil de implementar en Visual Studio, mientras que en el pasado algunas características no estarían disponibles y tendrían que estar codificadas en C # o en C ++. .

Por lo tanto, Visual Studio implementa / expone una cantidad de características de git directamente, pero algunas no están expuestas. Las características como RefLog, Force Push, Stash, Git Flow, Cherry Pick no están expuestas a través de la interfaz de usuario de Visual Studio en este momento. Si confía en estos comandos, necesitará un cliente git externo. La línea de comandos es el ejemplo más universal de dicho cliente, pero hay otros que también pueden ayudarte. GitKraken, SourceTree, Tower y otros vienen a la mente .


Esto podría estar en línea con el reciente tweet de Edward Thomson (también en ):

No me importa @VisualStudio eliminar libgit2 y pasar a git, tenían buenas razones pero la excusa "actúa diferente" se lee como FUD.

Hay buenas razones para que pasen a git: mantener libgit2 en VS fue una pesadilla. (¡Lo sé! ¡Solía ​​hacerlo!)

¿Y por qué pagar para piratear (o alrededor) de libgit2 cuando emplean un mantenedor de Git for Windows?

Él está hablando aquí sobre Johannes Schindelin , que trabajó para Microsoft el pasado agosto de 2015 , y que está lanzando las ediciones de Git for Windows .

Totalmente tiene sentido que se muevan.

Hasta hace poco, Visual Studio no usaba un cliente Git de terceros, pero ahora sí, con Visual Studio 15 (como comentó jessehouwing , VS 2015 no viene con su propio git.exe , sino que usa una biblioteca).

Esto es Visual Studio 15 Preview 5 (no Visual Studio 2015 que es v14.25123.xx)
Ver ycombinator.com :

Parece una pena que el equipo "15" haya renunciado a libgit2. Teniendo en cuenta que Microsoft ha contribuido / son un colaborador y, presumiblemente, todas las partes contribuyentes tienen el mismo objetivo (multiplataforma, paridad de funciones, etc.), uno tiene que preguntarse qué hay de malo con libgit2 y se ha descartado a favor de eliminar git.exe.

Al soltar libgit2, liberaron algo de memoria. Obviamente, el uso general de la memoria de VS y git probablemente se incremente, pero los equipos de VS se flagean hasta que el uso de la memoria disminuye porque nadie priorizará la creación de una aplicación de 64 bits.

El OP pregunta:

de hecho, estoy usando VS "15" Preview 5. Entonces, ¿eso significa que tendré que instalar Git para Windows o ya viene con VS 15? Y si es así, ¿por qué todavía me pide que lo instale? - Jonney Shih hace 3 minutos

jessehouwing respuestas:

Una versión muy mínima viene con Visual Studio. Pero no está agregado a la ruta . Entonces Visual Studio no depende de que lo instales.

Está instalado aquí:

La mejor forma de instalar un cliente de git para sus propias escapadas de línea de comando es instalar Git para Windows junto con Visual Studio. Si lo ha hecho, puede descartar la solicitud de Visual Studio

Personalmente, me gusta "instalar" Git simplemente descomprimiendo el último archivo como: PortableGit-2.10.1-64-bit.7z.exe cualquier lugar que desee.