Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
Visual Studio 2019 | Visual Studio 2022
Puede compartir el trabajo en una rama de repositorio de Git local cargando los cambios en un repositorio remoto al que otros usuarios pueden acceder. El comando de inserción de Git carga nuevas confirmaciones de la rama local en la rama correspondiente de un repositorio remoto. Visual Studio usa el comando push cuando decide sincronizar el trabajo con un repositorio remoto.
Después de agregar una o varias confirmaciones a una rama local, puede "insertar" las confirmaciones en una rama remota para compartir o realizar copias de seguridad del trabajo. Al usar el comando push, Git comprueba si la rama local está actualizada con la rama remota. Si no es así, Git impedirá que inserte nuevas confirmaciones hasta que haya actualizado la rama local. Para resolver este problema, puede extraer para obtener las confirmaciones de la rama remota que no están presentes en la rama local. Si las confirmaciones remotas extraídas entran en conflicto con las confirmaciones locales, intente resolver esos conflictos antes de insertar los cambios.
Para que el comando de inserción de Git funcione, el repositorio local debe estar conectado a un repositorio de Git remoto. Si ha clonado el repositorio local desde un repositorio remoto, ya están conectados. Pero si ha creado el repositorio local sin clonación, deberá conectarlo a un repositorio de Git hospedado. Para obtener más información, consulte Conexión a un repositorio de Git de Azure Repos y Conexión a un repositorio de GitHub.
Sugerencia
Para admitir una revisión de solicitudes de incorporación de cambios del trabajo, evite trabajar directamente en la rama main del repositorio local. En su lugar, guarde las confirmaciones en una rama de características local o una rama de corrección de errores e inserte esa rama al finalizar el trabajo. Para obtener información general sobre el flujo de trabajo de Git, vea Tutorial de Git de Azure Repos.
Visual Studio 2022 proporciona una experiencia de control de versiones de Git mediante el menú Git, Cambios de Git y los menús contextuales del Explorador de soluciones. En Visual Studio 2019, versión 16.8, también se ofrece la interfaz de usuario de Git Team Explorer. Parar más información, vea la pestaña Visual Studio 2019: Team Explorer.
En la ventana Cambios de Git, seleccione el botón de inserción de flecha arriba para insertar la confirmación.
Los cambios también se pueden enviar desde la ventana Repositorio Git. Para abrir la ventana Repositorio Git, seleccione el vínculo de elementos salientes/entrantes de la ventana Cambios de Git.
Los cambios también se pueden enviar desde el menú Git de la barra de menús.
Visual Studio 2019 proporciona una experiencia de control de versiones de Git mediante el menú Git, Cambios de Git y los menús contextuales del Explorador de soluciones.
En la ventana Cambios de Git, seleccione el botón de inserción de flecha arriba para insertar la confirmación.
Los cambios también se pueden enviar desde la ventana Repositorio Git. Para abrir la ventana Repositorio Git, seleccione el vínculo de elementos salientes/entrantes de la ventana Cambios de Git.
Los cambios también se pueden enviar desde el menú Git de la barra de menús.
Visual Studio 2019, versión 16.8 y versiones posteriores, proporciona una experiencia de control de versiones de Git al tiempo que mantiene la interfaz de usuario de Git de Team Explorer. Para usar Team Explorer, desactive Herramientas>Opciones>Características en versión preliminar>Nueva experiencia de usuario de Git en la barra de menús. Puede usar las características de Git indistintamente desde cualquier interfaz.
En Team Explorer, seleccione Inicio y, luego, Sincronización para abrir Sincronización.
También puede ir a la vista Sincronización desde Cambios si selecciona Sincronizar inmediatamente después de realizar una confirmación.
En la vista Sincronización, seleccione Insertar para cargar la confirmación en el repositorio remoto. Si es su primera inserción en el repositorio, verá el mensaje: The current branch does not track a remote branch..., que le informa de que la confirmación se ha insertado en una nueva rama del repositorio remoto y de que las confirmaciones futuras insertadas desde la rama actual se cargarán en esa rama remota.
Aunque rara vez debe tener que insertar una rama local en una rama remota con un nombre diferente, puede hacerlo mediante el comando de inserción de Git no bifurcado:
Para insertar nuevas confirmaciones desde la rama local en una rama remota con el mismo nombre, ejecute el siguiente comando de inserción simplificado. Si el repositorio remoto no tiene una rama con el mismo nombre, este comando creará una nueva rama remota con el mismo nombre y confirma que la rama local.
git push <remote repo> <local branch name>
Al clonar un repositorio remoto, Git asigna el alias origin como abreviatura para la dirección URL del repositorio remoto que ha clonado. Ejecute git remote -v para comprobar el valor del alias origin. Para agregar el alias origin manualmente, ejecute git remote add origin <remote repo url>. Con el alias origin, puede simplificar aún más el comando push:
git push origin <local branch name>
Para insertar nuevas confirmaciones desde la rama local actual en una rama remota con el mismo nombre, ejecute el siguiente comando de inserción simplificado. Si el repositorio remoto no tiene una rama con el mismo nombre, se producirá un error en este comando.
git push origin
Si la rama local actual realiza un seguimiento de una rama remota en origin, puede abreviar totalmente el comando push:
git push
Pero si la rama local no realiza un seguimiento de una rama remota se producirá un error en el comando push totalmente abreviado. Ejecute git remote show origin para comprobar el estado de seguimiento de las ramas. Para insertar y establecer la rama local actual para realizar un seguimiento de la rama remota con el mismo nombre en origin, ejecute git push --set-upstream origin <local branch name> una vez. La marca --set-upstream creará una rama remota con el mismo nombre si no existe.
Es habitual trabajar en una rama de característica local (o bugfix) para actualizar periódicamente la rama con los cambios más recientes de la rama main. En función de cómo lo haga, los historiales de confirmación local y remota de la rama de características podrían divergir de modo que el comando de inserción de Git devuelva un error. Si es la única persona que inserta en la rama de características remota y está seguro de que la rama de características local contiene todo el trabajo que necesita, puede usar el comando de inserción de Git con la marca --force para reemplazar todas las confirmaciones de la rama de características remotas por las confirmaciones de la rama de características local. Para obtener más información sobre el comando de inserción de Git, incluidas otras opciones force, consulte el manual de referencia de Git.
Una vez que haya insertado las confirmaciones, puede crear una solicitud de incorporación de cambios para que otros usuarios sepan que quiere revisar los cambios. Si se aprueba, los cambios se combinarán en una rama de destino del repositorio remoto.