Estoy en el proceso de finalmente lanzar Mercurial como nuestro sistema de control de versiones en el trabajo. Este es un gran problema para todos, ya que, sorprendentemente, nunca han usado un VCS. Después de meses de poner el error en los oídos de la administración, finalmente vieron la luz y ahora se dan cuenta de lo mejor que es trabajar con una red de carpetas compartidas.
En el proceso de implementar esto, estoy pensando en diferentes estrategias para administrar nuestras cosas y me estoy inclinando hacia el uso de Bitbucket como nuestro repositorio "central". Los proyectos en Bitbucket serán únicamente proyectos privados y todos empujarán y tirarán desde allí.
Estoy abierto a diferentes sugerencias, pero ¿alguien tiene una configuración similar? Si es así, ¿qué advertencias has encontrado?
fuente
Respuestas:
Uso Bitbucket para alojamiento de repositorio privado y uno de mis clientes usa alojamiento de repositorio privado en GitHub. Otra compañía con la que trabajo utiliza un repositorio privado de alojamiento de subversión en los servidores de Jira.
El almacenamiento externo de sus datos, si no es el único lugar donde los tiene, puede reducir su riesgo cuando se trata de recuperación ante desastres. Dado que tendrá copias físicas de la fuente en las máquinas de desarrollo, y git y mercurial mantienen todo el historial de desarrollo en las copias locales, esta es ahora una solución muy viable. A menos que tenga gigabytes de datos en un solo proyecto y una conexión de red lenta, le recomiendo esta opción. Es de bajo costo, brinda a los desarrolladores mucha portabilidad y flexibilidad, y le brinda redundancia automática.
Dependiendo de su nivel de paranoia, es posible que le preocupe que un tercero que almacene su código pueda exponer riesgos de seguridad, pero creo que en la práctica esto no es peor que tener desarrolladores con computadoras portátiles que se pueden usar fuera de su red corporativa. Github y Bitbucket usan SSH para transferir datos, por lo que los ataques de hombre en el medio tienen una probabilidad de ocurrencia relativamente baja.
fuente
No soy un usuario de BitBucket, pero sugeriría leer sus términos y condiciones con un peine de dientes finos. Debe estar realmente seguro de sus términos de servicio, protección de datos y seguridad / privacidad si va a almacenar los proyectos privados de su empresa allí.
¿Supongo que ha buscado tener un Mecurial 'central / master' alojado en una máquina interna?
fuente
Hicimos algo similar con ProjectLocker en mi antiguo trabajo. Honestamente, todo se reduce a un análisis de costo / beneficio: ¿está dispuesto a renunciar a la flexibilidad y los costos de ejecutar su propio servidor Hq / Git / SVN por el precio que pagará a BitBucket? Si es así, entonces adelante. Realmente nunca tuvimos un problema de tiempo de actividad, y fue una buena experiencia.
fuente
No somos usuarios de BitBucket (como empresa). Ejecutamos varios sistemas heredados internos (CVS, SVN) y nuestro repositorio principal es un sistema git con cachés sincronizados en oficinas periféricas. Desde la perspectiva de un gerente, aconsejaría que no se coloque la propiedad intelectual de su empresa en los servidores de otra persona, a menos que no tenga las instalaciones de TI adecuadas en la empresa. Este código es el elemento vital de su empresa. No debe tratarse de dinero, sino de proteger su IP.
fuente
Yo diría que definitivamente se reduce a un análisis de costos que es más barato; ejecutar su propio servidor (o una instancia de VM) o pegarlo en otro lugar.
Además, si la compañía ya tiene configuradas carpetas compartidas de red, es posible que desee considerar usar Git, porque podría convertir esa carpeta compartida de red en su repositorio 'remoto', con algo así
git init --bare
, y los permisos de uso compartido de red ya estarían en su lugar para los usuarios Luego, cada usuario podría agregar la carpeta compartida como un control remoto congit remote add origin file:///some/shared/folder
(esa podría no ser la sintaxis exacta para un recurso compartido de referencia de archivo, lo buscaría en Google para la sintaxis exacta).Básicamente hago esto en casa para administrar mis proyectos personales; Tengo una unidad NAS en mi LAN doméstica que tiene mis repositorios 'remotos', luego puedo acceder a ellos desde mis diversas PC y computadoras portátiles a través de una letra de unidad asignada de Windows.
fuente
Me uno a los otros programadores en este: piense detenidamente en regalar su código .
Para mí, solo sería una opción externalizar el VCS si realmente no tiene la mano de obra y / o el conocimiento para alojar su propio repositorio (es decir, incluyendo copias de seguridad y mantenimiento). Si ya ha compartido carpetas de red con copias de seguridad regulares, puede comenzar a usarlas y obtener la copia de seguridad sin costo adicional.
fuente
He usado BitBucket por un tiempo y he descubierto que es un servicio bastante bueno. No creo que haya problemas con la privacidad o la seguridad.
Dicho esto, si se siente incómodo al alojar el código de su empresa en los servidores de otra persona, puede configurar un repositorio mercurial para acceder a través de ssh en uno de los servidores de su empresa. Ver http://mercurial.selenic.com/wiki/SharedSSH y http://blog.mixu.net/2010/10/04/setting-up-private-ssh-based-mercurial-repo-hosting-on-centos / .
fuente
Bitbucket es bueno para proyectos de código abierto.
Si este proyecto será propietario, sugeriría alojar su propio código. No es tan costoso alojarlo usted mismo, si ya tiene una configuración de TI. Simplemente encuentre un servidor justo e implemente su código.
Mercurial es fácil de configurar.
Buena suerte y disfruta.
Mercurial es realmente agradable. Lo extraño :(
fuente
Bueno, para una empresa, preferiría asegurarme de que el repositorio autorizado del proyecto esté en un servidor privado, incluso si tiene un clon siempre actualizado en Bitbucket, solo para estar seguro.
Recomendaría instalar Rhodecode en una máquina de servidor local privado (para acceso rápido), y luego tener una actualización de script bitbucket regularmente, si lo desea. De todos modos, mantenga varios clones en diferentes lugares, nunca se sabe.
fuente