Cuando se trabaja con el repositorio de Subversion, los cambios remotos (los del repositorio) son cambios entrantes (remoto → local), mientras que los cambios locales son cambios salientes (local → remoto).
En las vistas que comparan las copias locales y remotas, los cambios entrantes se indican con una flecha azul hacia la izquierda, mientras que los cambios salientes se indican con una flecha gris hacia la derecha. Estas flechas pueden estar decoradas para indicar operaciones más específicas.
La vista del Explorador de paquetes, por otro lado, indica el estado de un archivo con un conjunto diferente de iconos que representan su estado local. Estos iconos son los que se ven con más frecuencia, así que comencemos con ellos:
- Un archivo ignorado por el control de versiones. Puede controlar qué recursos se ignorarán yendo a Ventana → Preferencias → Equipo → Recursos ignorados .
- Un archivo que no está bajo control de versiones. Por lo general, se trata de archivos nuevos que aún no ha enviado al repositorio.
- Un archivo versionado que debe agregarse al repositorio remoto. Por lo general, se trata de archivos que ha cambiado de nombre o que ha movido a un directorio diferente.
- Una carpeta eliminada. Estas son carpetas que ha eliminado localmente sin confirmar aún los cambios en el repositorio. Tenga en cuenta que los archivos generalmente se eliminan de la vista cuando se eliminan localmente, por lo que normalmente no se ven con este icono.
- Un archivo sin cambios locales.
- Un archivo con cambios locales no confirmados.
- UNAarchivo bloqueado .
- Un archivo que necesita un candado para editarse. Por lo general, estos son archivos que no se pueden fusionar fácilmente (es decir, archivos binarios), pero pueden tener muchos editores. Un archivo necesita un bloqueo cuando svn:needs-lock
se establece su propiedad, y Subversion intentará hacer que estos archivos sean de sólo lectura en el sistema de archivos para hacer cumplir la negociación de bloqueo adecuada.
- Un archivo en conflicto. Por lo general, estos son archivos que tuvieron un conflicto de confirmación / actualización que marcó para resolver más tarde.
- Un archivo que tiene un árbol de conflicto. Por lo general, estos son archivos que tienen cambios locales, pero que desde entonces se han movido, eliminado o cambiado de nombre en el repositorio desde la última actualización de la copia local.
- Un archivo externo al proyecto. Los archivos externos vinculados no se pueden enviar al repositorio. - Un archivo que ha sido
cambiado . Estos son archivos que pertenecen a una copia de trabajo diferente a su directorio principal local.
En una vista de sincronización (por ejemplo, a través de Sincronizar con repositorio o Confirmar ), como se describió anteriormente, hay iconos que indican en qué dirección se está produciendo un cambio, así como información adicional sobre ese cambio. Estos se describen a continuación:
Saliente
: un archivo cuyo contenido se ha modificado y se enviará al repositorio.
- Un archivo que se agregará nuevamente al repositorio. Esto puede coincidir con la eliminación de un archivo en los casos en que un archivo se mueva o cambie de nombre.
- Un archivo que se eliminará del repositorio. Esto puede coincidir con la adición de un archivo en los casos en que un archivo se mueve o cambia de nombre.
- Un archivo con cambios de propiedad , en el diálogo Commit. En la pestaña Sincronizar, los cambios de propiedad se reflejan actualmente como una modificación de archivo normal ( ).
Entrante
: un archivo que tiene cambios de contenido confirmados en el repositorio que se aplicarán a la copia local.
- Un nuevo archivo que se agregará a la copia local desde el repositorio. Al igual que la adición del archivo saliente, esto puede ser el resultado de un movimiento o cambio de nombre.
- Un archivo que se eliminará de la copia local porque se eliminó del repositorio. Al igual que la eliminación de archivos salientes, esto puede ser el resultado de un movimiento o cambio de nombre.
Conflicto
: un archivo que se ha modificado tanto en la copia local como en el repositorio de forma independiente, lo que provoca la necesidad de resolución de conflictos. Arreglar esta condición implica abrir la vista de conflictos o sobrescribir por la fuerza los cambios de forma local o remota.
- Un archivo que tiene un árbol de conflicto . Esto puede ocurrir cuando hay nuevos cambios en un archivo en un extremo (ya sea local o remoto), y el archivo se mueve, elimina o cambia de nombre en el otro.
Finalmente, la opción Sincronizar con el repositorio abre la pestaña Sincronizar ( ) con los siguientes botones:
- Sincroniza la copia local con el repositorio seleccionado actualmente cuando se hace clic. La selección del menú desplegable permite cambiar entre diferentes bases de códigos remotos.
- Muestra solo los cambios entrantes (remoto → local).
- Muestra solo los cambios salientes (local → remoto).
- Muestra cambios entrantes y salientes (remoto ↔ local).
- Muestra cambios conflictivos.
- Actualiza todos los recursos locales con cambios entrantes después del aviso.
- Muestra el diálogo de confirmación para confirmar todos los cambios salientes.
- Divide las listas de cambios por revisiones.
Hay algunas otras vistas que no se cubrieron y que tienen íconos adicionales, pero es de esperar que este sea un buen comienzo. Avíseme si falta algo importante o si alguna de estas descripciones parece diferir de su experiencia real.