Close

Compartir

En SVN, los desarrolladores comparten colaboraciones al hacer commit de cambios de una copia de trabajo en su equipo local a un repositorio central. Entonces, otros desarrolladores recuperan esas actualizaciones de un repositorio central a sus copias locales de trabajo.

Git’s collaboration workflow is much different. Instead of differentiating between working copies and the central repository, Git gives each developer their own local copy of the entire repository. Changes are committed to this local repository instead of a central one. To share updates with other developers, you need to push these local changes to a public Git repository on a server. Then, the other developers can pull your new commits from the public repo into their own local repositories.

Migración a Git: Desarrollo de SVN centralizado frente a desarrollo de Git distribuido

Dar a cada desarrollador su repositorio completo es lo más importante del control de versiones distribuidas, y abre una gran variedad de workflows potenciales. Puedes leer más sobre estos workflows en la sección Workflows de Git.

Hasta ahora solo has trabajado con un repositorio Git local. En esta página, se explica cómo enviar el repositorio local a un repositorio público alojado en Bitbucket. Compartir el repositorio Git durante la migración le permite a tu equipo experimentar con los comandos de Git sin afectar el desarrollo activo en SVN. Hasta que estés preparado para el cambio, es muy importante usar los repositorios Git compartidos como de solo lectura. Hay que seguir haciendo commit de todo el desarrollo en el repositorio SVN original.


Crear una cuenta de Bitbucket


Si todavía no tienes una cuenta de Bitbucket, debes crear una. El alojamiento es gratis hasta para 5 usuarios, así que puedes empezar a experimentar con los nuevos workflows de Git en el momento.

Crear un repositorio Bitbucket


A continuación, tienes que crear un repositorio Bitbucket. Bitbucket hace que gestionar los repositorios alojados a través de una interfaz web sea muy fácil. Solo debes hacer clic en el botón Crear un repositorio después de haber iniciado sesión.

Create repository within Bitbucket

En el formulario resultante, agrega un nombre y una descripción al repositorio. Si el proyecto es privado marca la opción Nivel de acceso para que solo los desarrolladores designados puedan clonarlo. Para el campo Forking, usa Solo permitir forks privados. Usa Git para el Tipo de repositorio elige las herramientas de gestión de proyecto que desees usar y elige el lenguaje de programación primario de tu proyecto en el campo Lenguaje.

Create repository fields within Bitbucket
bases de datos
Material relacionado

Cómo mover un repositorio de Git completo

Logotipo de Bitbucket
VER LA SOLUCIÓN

Aprende a usar Git con Bitbucket Cloud

Para crear el repositorio alojado, envía el formulario haciendo clic en el botón Crear repositorio. Después de configurar el repositorio, verás la página Siguientes pasos que describe algunos comandos útiles para importar un proyecto existente. El resto de esta página te guiará paso a paso a través de esas instrucciones.

Agregar un origen remoto


Para que sea más fácil enviar los commits desde el repositorio local al repositorio Bitbucket que recién has creado, debes registrar la URL del repositorio Bitbucket en un remoto. Un remoto es un atajo para una URL. Técnicamente, puedes usar lo que quieras para el atajo, pero si el repositorio remoto es el código base oficial para el proyecto, es mejor referirse a él como origin. Ejecuta lo siguiente en el repositorio Git local para agregar el repositorio Bitbucket como el remoto origin.

git remote add origin https://<username>@bitbucket.org/<workspace-id>/<repo>.git

Be sure to change <username> to your Bitbucket username, <workspace-id> to your workspace’s id, and <repo> to the name of the Bitbucket repository. You should also be able to copy and paste the complete URL from the Bitbucket web interface.

Migración a Git: Agregar un origen remoto

Después de ejecutar el comando mencionado, puedes usar origin en otros comandos de Git para remitir al repositorio Bitbucket.

Enviar el repositorio local a Bitbucket


Después necesitas poner el contenido del repositorio local Git en el repositorio local Bitbucket. Esto se llama “enviar” y puede hacerse con el siguiente comando:

git push -u origin --all

La opción -u le indica a Git que siga las ramas del remoto ascendente. Esto permite que Git te avise si la historia de commit del repositorio remoto va más avanzada o atrasada que las locales. La opción --all envía todas las ramas locales al repositorio remoto.

You also need to push your local tags to the Bitbucket repository with the --tags option:

git push --tags
Migración a Git: Enviar a repositorio de Bitbucket

Tu repositorio Bitbucket básicamente ahora es un clon de tu repositorio local. En la interfaz web de Bitbucket, deberías poder examinar la historia completa de commit de todas las ramas.

Compartir el repositorio con tu equipo


Solo tienes que compartir la URL de tu repositorio Bitbucket con cualquiera de los otros desarrolladores que necesiten acceso al repositorio. La URL para cualquier repositorio Git se puede copiar y pegar de la página principal del repositorio en Bitbucket:

Share repository url

Si el repositorio es privado, también necesitas conceder acceso a los miembros del equipo en la pestaña Gestión de la interfaz web de Bitbucket. Los usuarios y grupos se pueden gestionar haciendo clic en enlace de Gestión de acceso en la barra lateral izquierda.

Migración a Git: Gestión de acceso de los repositorios Git

Como alternativa, es posible usar la funcionalidad integrada de Bitbucket para invitar a otros desarrolladores a hacer un fork del repositorio. Los usuarios invitados reciben acceso automático, así que no hay que preocuparse por conceder permisos.

Una vez que tenga la URL del repositorio, otro desarrollador puede copiar el repositorio en su máquina local con git clone y empezar a trabajar en el proyecto. Por ejemplo, después de ejecutar el siguiente comando en su máquina local, puede encontrar el nuevo repositorio de Git con el proyecto en el directorio <repo>.

git clone https://<username>@bitbucket.org/<workspace-id>/<repo>.git 

Seguir confirmando con SVN, no con Git


Ahora deberías poder enviar tu proyecto local a un repositorio remoto, y tu equipo debería poder usar ese repositorio remoto para clonar el proyecto en sus máquinas locales. Estas son todas las herramientas que necesitas para empezar a colaborar con Git. Sin embargo, tú y tu equipo debéis seguir confirmando los cambios con SVN hasta que todos estéis preparados para hacer la transición.

Los únicos cambios realizados en el repositorio de Git deben provenir del repositorio SVN original mediante el proceso de sincronización descrito en la página anterior. A todos los efectos, esto significa que todos tus repositorios de Git (tanto locales como remotos) son de solo lectura. Tus desarrolladores pueden experimentar con ellos y tú puedes empezar a integrarlos en tu proceso de compilación, pero debes evitar confirmar cambios permanentes con Git.

Migración de Git: los cambios realizados en el repositorio de Git deben provenir solamente del repositorio de SVN original

Resumen


En este paso, has configurado un repositorio de Bitbucket para compartir tu repositorio de Git convertido con otros desarrolladores. Ahora deberías tener todas las herramientas que necesitas para implementar cualquiera de los flujos de trabajo de Git que se describen en los flujos de trabajo de Git. Puedes seguir sincronizándote con el repositorio de SVN y compartiendo las confirmaciones de Git resultantes a través de Bitbucket durante el tiempo que sea necesario para que tu equipo de desarrollo se sienta cómodo con Git. A continuación, puedes completar el proceso de migración retirando tu repositorio SVN.


Compartir este artículo
Tema siguiente

Lecturas recomendadas

Consulta estos recursos para conocer los tipos de equipos de DevOps o para estar al tanto de las novedades sobre DevOps en Atlassian.

Gente que colabora utilizando un muro lleno de herramientas

Blog de Bitbucket

Ilustración de Devops

Ruta de aprendizaje de DevOps

Demostraciones de funciones con expertos de Atlassian del Centro de demostraciones

Cómo funciona Bitbucket Cloud con Atlassian Open DevOps

Suscríbete para recibir el boletín de DevOps

Thank you for signing up