Administración del control de código fuente con el panel de Git - AWS Cloud9

AWS Cloud9 ya no está disponible para nuevos clientes. Los clientes existentes de AWS Cloud9 pueden seguir utilizando el servicio con normalidad. Más información

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Administración del control de código fuente con el panel de Git

La extensión del panel Git AWS Cloud9 proporciona un cómodo acceso a la interfaz de usuario tanto a los comandos principales como a los avanzados de Git.

En esta sección se muestra cómo acceder a las funciones clave de Git para administrar el control de código fuente. Los procedimientos se centran en el uso del menú del panel de Git para ejecutar comandos de Git en su repositorio y su contenido.

Opciones de interfaz para inicializar y clonar un repositorio de Git

Para acceder a cualquier comando de Git compatible, también puede comenzar a ingresar el nombre en el cuadro de búsqueda del panel de Git:

Opciones de interfaz para inicializar y clonar un repositorio de Git

Asimismo, puede ver los comandos reales de Git que se ejecutan cuando interactúa con la interfaz del panel de Git. Para ver la actividad de la línea de comandos, vaya al menú del panel de Git y elija Show Git Output (Mostrar salida de Git).

Visualización de la salida del comando de Git

Inicialización o clonación de un repositorio de Git

Un repositorio de Git (“repositorio”) contiene el historial completo de un proyecto desde el principio. Un repositorio consta de todas las instantáneas del contenido del proyecto capturadas cada vez que se confirmaron archivos provisionales a ese repositorio.

El panel de Git admite ambas formas de obtener un repositorio de Git:

  • Inicializar un directorio existente como un repositorio de Git.

  • Clonar un repositorio existente y copiarlo en el directorio local.

Opciones de interfaz para inicializar y clonar un repositorio de Git
nota

Las opciones de interfaz para inicializar o clonar un repositorio solo están disponibles si aún no tiene ningún repositorio de Git agregado a la carpeta del área de trabajo de su entorno. Si ya tiene un directorio de trabajo para un repositorio, la ventana del panel de Git muestra el estado del directorio de trabajo y del área de almacenamiento provisional. El menú del panel de Git también está disponible para proporcionar acceso a los comandos de Git que puede ejecutar en el repositorio.

Para inicializar o clonar un repositorio

  1. Si el panel de Git aún no está disponible, para acceder a este elija Window (Ventana), Source Control (Control de código fuente) y, a continuación, seleccione el icono de Git.

    nota

    También puede abrir el panel de Git usando el método abreviado del teclado Ctrl+Mayús+G.

  2. Elija si desea inicializar un nuevo repositorio o clonar uno existente.

    Initialize a repository
    • En el panel de Git, elija Initialize Repository (Inicializar repositorio).

    • A continuación, elija la carpeta del área de trabajo donde se inicializará el repositorio de Git. Puede ingresar una ruta a la carpeta, elegir una ruta o elegir una carpeta en un cuadro de diálogo.

    • Si utiliza un cuadro de diálogo, seleccione la carpeta de destino y elija Initialize Repository (Inicializar repositorio).

    Selección de una carpeta de área de trabajo para un repositorio de Git

    Después de inicializar el repositorio de Git en la carpeta seleccionada, el panel de Git muestra todos los archivos que ya están en esa carpeta como sin seguimiento y listos para agregar al área de almacenamiento provisional de Git.

    Selección de una carpeta de área de trabajo para un repositorio de Git
    Clone a repository
    • En la ventana del panel de Git, elija Clone Repository (Clonar repositorio).

    • A continuación, introduce una URL para el repositorio remoto que quieres clonar (por ejemplohttps://github.com/my-own-repo/my-repo-project-name.git, para clonar un repositorio alojado GitHub) y pulsa Return.

    • En el cuadro de diálogo que se muestra, seleccione una carpeta de área de trabajo para el repositorio clonado y elija Select Repository Location (Seleccionar ubicación del repositorio).

    nota

    Si accedes a un repositorio alojado en un sitio externo (por ejemplo)GitHub, también debes introducir las credenciales de inicio de sesión del sitio para completar el proceso.

    Después de clonar el repositorio remoto en la carpeta seleccionada, puede ejecutar el comando git pull para sincronizar el repositorio local con los cambios más recientes en el repositorio remoto. Para obtener más información, consulte Trabajo con repositorios remotos.

Almacenamiento provisional y confirmación de archivos

Después de obtener un repositorio de Git, puede comenzar a llenarlo con contenido mediante un proceso de dos pasos:

  1. Agregue contenido sin seguimiento o modificado recientemente al área de almacenamiento provisional.

  2. Confirme los archivos del área de almacenamiento provisional en el directorio de trabajo.

importante

Es posible que no desee confirmar todos los archivos del directorio de trabajo en el repositorio. Por ejemplo, es poco probable que desee agregar archivos generados durante el tiempo de ejecución al repositorio del proyecto. Con el panel de Git, puede marcar archivos para que se ignoren. Para ello, debe agregarlos a una lista en un archivo .gitignore.

Para actualizar la lista en .gitignore, haga clic con el botón derecho en un archivo que no se haya agregado al área de almacenamiento provisional y seleccione Add File to .gitignore (Agregar archivo a .gitignore). IDEAbre el .gitignore archivo y el nombre del archivo seleccionado se añade a la lista de archivos ignorados.

Para obtener información sobre el uso de la coincidencia de patrones en .gitignore para excluir tipos de archivo, consulte la referencia pertinente en el sitio git-scm.com.

Stage files

Los archivos sin seguimiento (con la etiqueta “U”) y los archivos modificados (con la etiqueta “M”) que no se han añadido al área de almacenamiento provisional se enumeran en Changes (Cambios) en el panel de Git.

Contenido sin seguimiento en la carpeta de área de trabajo del repositorio de Git

Usando la interfaz del panel de Git, puede agregar archivos específicos o todos los archivos sin seguimiento y modificados al área de almacenamiento provisional:

  • Archivos específicos: inserte una pausa en el archivo y, a continuación, elija + para agregarlo al área de almacenamiento provisional. También puede hacer clic con el botón derecho en el archivo y elegir Stage Changes (Almacenar provisionalmente los cambios).

  • Todos los archivos: vaya al menú del panel de Git y elija Stage All Changes (Almacenar provisionalmente todos los cambios).

Los archivos agregados al índice del repositorio se enumeran en Staged Changes (Cambios almacenados provisionalmente). Los archivos sin seguimiento anterior se etiquetan con “A” para indicar que se han almacenado provisionalmente.

Contenido almacenado provisionalmente en la carpeta de área de trabajo del repositorio de Git
nota

También puede quitar cambios específicos o todos los cambios del almacenamiento provisional. Para un solo archivo, inserte una pausa en el archivo y, a continuación, elija -. También puede hacer clic con el botón derecho en el archivo y elegir Unstage Changes (Quitar cambios del almacenamiento provisional). Para quitar todos los cambios del almacenamiento provisional, vaya al menú del panel de Git y elija Unstage All Changes (Quitar todos los cambios del almacenamiento provisional).

Commit files

Puede usar el comando commit de Git para capturar los archivos almacenados provisionalmente como una instantánea permanente en el repositorio. Puede usar la interfaz del panel de Git para elegir los archivos que desea confirmar:

  • Confirmar archivos en el área de almacenamiento provisional: vaya al menú del panel de Git y elija Commit (Confirmación) o Commit Staged (Confirmación almacenada provisionalmente).

  • Confirmar todos los archivos del directorio de trabajo: vaya al menú del panel de Git y elija Commit All (Confirmar todo). (Esta opción utiliza el comando git add para agregar archivos al área de almacenamiento provisional antes de llamar a git commit).

nota

También puede utilizar las opciones amend y signed-off al confirmar archivos con el panel de Git. La opción amend modifica el mensaje de confirmación de la confirmación más reciente. La opción sign-off puede identificar quién realizó la confirmación en el registro de Git.

También puede revertir una confirmación, para lo cual debe ir al menú del panel de Git y elegir Undo Last Commit (Deshacer última confirmación).

Visualización de diferentes versiones de archivo

Puede comparar versiones de un archivo que se ha modificado después de almacenarlo provisionalmente o confirmarlo.

  • Archivos enumerados en Changes (Cambios): elija la “M” para ver las diferencias entre la versión del directorio de trabajo y la versión almacenada provisionalmente por última vez o confirmada en el repositorio.

  • Archivos enumerados en Staged Changes (Cambios almacenados provisionalmente): elija la “M” para ver las diferencias entre la versión del área de almacenamiento provisional y la versión confirmada por última vez en el repositorio.

Tras seleccionar «M», aparecerá una IDE ventana con las diferencias entre las dos versiones del archivo. Un lado muestra la versión que se sigue como actual en el repositorio. El otro lado muestra la versión modificada que aún no está confirmada.

Comparación de contenido versionado en el repositorio de Git

Uso de las ramificaciones

Git facilita enormemente la administración del flujo de trabajo al permitirle trabajar en nuevas características en ramificaciones que son independientes de la ramificación principal del repositorio. Puedes cambiar sin problemas entre varias ramas y, al mismo tiempo, asegurarte de tener siempre el código ready-to-build fuente en la rama principal.

Creación de una ramificación

Crear una ramificación implica asignar un nombre a la ramificación y seleccionar su punto de partida.

  1. En el menú del panel de Git, elija Checkout to (Pago a). También puede elegir el nombre de la ramificación actual que se muestra en la parte inferior del panel de Git.

    Selección de la ramificación actual de Git
  2. Elija una opción para crear una nueva ramificación:

    • Create new branch (Crear de una nueva ramificación): la nueva ramificación comienza desde la última confirmación de la actual.

    • Crear de una nueva ramificación from (Crear una nueva ramificación a partir de): la nueva ramificación comienza desde la última confirmación de la ramificación que se selecciona en una pantalla posterior.

  3. Ingrese el nombre de la nueva ramificación.

  4. Si está especificando una ramificación específica como punto de partida para su ramificación, seleccione una de la lista.

Después de cambiar a la nueva ramificación, puede verificar el nombre de la ramificación en la parte inferior del panel de Git.

nota

Si trabaja con un repositorio remoto, publique la nueva ramificación en el repositorio remoto ascendente para permitir que otros usuarios accedan a su contenido.

Cambio de ramificaciones

Una de las ventajas clave de administrar el control de código fuente con Git es que puede cambiar entre diferentes proyectos simplemente cambiando de ramificaciones.

importante

No puede cambiar de ramificación si tiene archivos en la ramificación actual que no se han confirmado en el repositorio. Primero debe limpiar su directorio de trabajo, para lo cual debe confirmar o almacenar su trabajo.

  1. Elija el nombre de la ramificación actual en la parte inferior del panel de Git. Alternativamente, vaya al panel de Git y elija Checkout to (Pago a).

  2. Elija una ramificación de la lista que se muestra.

Después del cambio, el directorio de trabajo del repositorio se actualiza con las versiones del archivo confirmadas más recientemente en la ramificación seleccionada.

Fusión de ramificaciones

Cuando termine de trabajar en una característica en una ramificación discreta, normalmente querrá integrar los cambios en el proyecto principal. Con Git, este tipo de integración se facilita mediante la fusión de una ramificación (una ramificación de características, por ejemplo) en otra (generalmente la ramificación principal o predeterminada del repositorio).

  1. Para seleccionar una ramificación en la que va a fusionar otra ramificación, vaya al menú del panel de Git y elija Checkout to (Pago a).

    También puede elegir el nombre de la ramificación actual en la parte inferior del panel de Git.

  2. En la lista que se muestra, elija una ramificación a la que cambiar.

  3. En el cuadro Búsqueda del panel de Git, comience a ingresar la palabra “fusionar”.

    Cuando Git: Merge Branch aparezca bajo la lista de comandos, elíjalo.

    Búsqueda del comando merge
  4. En la lista que se muestra, elija una ramificación para fusionarla con la ramificación de destino.

    Si la fusión se completa sin conflictos, la interfaz del panel de Git se actualiza para mostrar la ramificación de destino que contiene los cambios combinados.

Al fusionar ramificaciones, puede encontrar conflictos de fusión derivados de cambios incompatibles realizados en el mismo contenido. Si esto sucede, se le advierte de que debe resolver los conflictos antes de confirmar la fusión.

Puedes usar la ventana IDE del editor de código para identificar el contenido conflictivo en las dos ramas y luego hacer cambios para resolver las diferencias.

IDEventana para resolver conflictos de fusión

Trabajo con repositorios remotos

Los repositorios remotos alojados en Internet o en una red facilitan la colaboración al permitir que los miembros del equipo compartan los cambios que han confirmado en sus responsabilidades locales. Al usar los comandos de Git que cargan y descargan datos, se asegura de que el contenido del repositorio “descendente” (local) se sincroniza con los del repositorio “ascendente” (remoto).

Publicación de una ramificación en un repositorio remoto

Después de crear una ramificación para un repositorio local, esta es privada para usted y no está disponible para sus colaboradores hasta que la inserta en el repositorio remoto “ascendente”.

  1. Para publicar la ramificación actual, vaya al menú del panel de Git y elija Publish Branch (Publicar ramificación). También puede hacer clic en el símbolo de nube situado junto al nombre de la ramificación en la parte inferior del panel de Git.

    Opción para publicar una ramificación en un repositorio remoto
  2. Si es necesario, introduzca las credenciales de inicio de sesión para acceder al repositorio remoto.

Si la ramificación se publica correctamente en el repositorio remoto, aparece un símbolo de sincronización junto al nombre de la ramificación en la parte inferior del panel de Git. Elija esta opción para sincronizar el contenido de los repositorios locales y remotos.

Opción para sincronizar ramificaciones locales y remotas

Inserción y extracción de contenido entre repositorios locales y remotos

Cuando se usa Git para colaborar en un proyecto compartido, normalmente comienza por extraer los cambios recientes realizados por otros miembros del equipo del repositorio remoto en su repositorio local. Después de confirmar los cambios en su repositorio local, los inserta al repositorio remoto para que el resto del equipo pueda acceder a ellos. Estas acciones se realizan mediante los comandos git pull y git push.

nota

Debes introducir tus credenciales de inicio de sesión al enviar y extraer cambios hacia y desde la mayoría de los repositorios alojados (como los de GitHub, por ejemplo).

Pull changes from remote

Con el comando git pull a través de la interfaz del panel de Git puede actualizar su repositorio local con los últimos cambios confirmados en una ramificación en el repositorio remoto.

  1. En el menú del panel de Git, elija Checkout to (Pago a).

  2. En la lista de ramificaciones, elija la ramificación local en la que desee extraer los cambios.

  3. A continuación, vaya al menú del panel de Git y elija Pull from (Extraer de).

  4. Seleccione un repositorio remoto y, a continuación, una ramificación de ese repositorio de la que se extraerán los cambios.

Después de realizar una extracción, puede acceder a los archivos recuperados del repositorio remoto en el directorio de trabajo del repositorio. Después de modificar los archivos, puede insertar los cambios en la ramificación remota.

Push changes to remote

Si usa git push a través de la interfaz del panel de Git, puede actualizar el repositorio remoto con los últimos cambios en una ramificación especificada en su repositorio local.

  1. En el menú del panel de Git, elija Checkout to (Pago a).

  2. En la lista de ramificaciones, elija la ramificación local de la que desee extraer los cambios.

  3. A continuación, vaya al menú del panel de Git y elija Push to (Insertar en).

  4. Seleccione un repositorio remoto y, a continuación, una ramificación de ese repositorio en la que insertar los cambios.

Después de una inserción, otros miembros del equipo pueden acceder a los cambios. Para ello, deben insertarlos en sus propias copias locales del repositorio.

Almacenamiento y recuperación de archivos

Con la característica de almacenamiento de Git, puede cambiar de ramificación sin confirmar primero los archivos almacenados provisionalmente o modificados. La característica de almacenamiento captura el estado actual del directorio de trabajo y el área de almacenamiento provisional y lo guarda para su uso posterior. Esta característica es útil cuando todavía está trabajando en contenido sin terminar y necesita cambiar de ramificación sin demora.

Almacenamiento de trabajo
  1. Para almacenar el estado actual de su directorio de trabajo, vaya al menú del panel de Git y elija una de las siguientes opciones:

    • Stash (Almacenar): todos los archivos modificados o almacenados provisionalmente en el directorio de trabajo se agregan al almacenamiento. Los archivos sin seguimiento no se agregan.

    • Stash (include Untracked) (Almacenar [incluidos sin seguimiento]): todos los archivos del directorio de trabajo, incluidos aquellos de los que aún no se realiza el seguimiento, se agregan al almacenamiento.

  2. Ingrese un mensaje opcional que le ayude a identificar el almacenamiento para recuperarlo posteriormente.

Después del almacenamiento, la interfaz del panel de Git se actualiza para mostrar el directorio de trabajo que se ha limpiado.

Recuperación de un almacenamiento
  1. Para recuperar un almacenamiento y aplicarlo a su directorio de trabajo, vaya al menú del panel de Git y elija una de las siguientes opciones:

    • Apply Stash (Abrir almacenamiento): aplique un almacenamiento a su directorio de trabajo y consérvelo para su uso posterior.

    • Pop Stash (Mostrar almacenamiento): aplique un almacenamiento seleccionado a su directorio de trabajo y elimine el almacenamiento de la pila de almacenamiento.

    nota

    También puede optar por aplicar o abrir el último almacenamiento que se agregó a la pila de escondite.

  2. Seleccione un almacenamiento para aplicarlo al directorio de trabajo.

La interfaz del panel de Git se actualiza para mostrar el directorio de trabajo con el almacenamiento aplicado.