¿Alguien puede recomendar un buen "sistema" de respaldo para un desarrollador?

Me conocen en la oficina como "el chico de respaldo". Como desarrollador, a menudo salto de un lado a otro entre los proyectos, y como resultado, no siempre recuerdo exactamente qué cambios estaban presentes en cada uno cuando return a ellos. Por lo general, tengo que comparar mis cambios locales con los de nuestro sistema de control de origen, y finalmente lo recordaré todo. La cosa es que no siempre tengo el lujo de hacer esto. A veces tengo que crear algo para un cliente rápidamente, y entonces hago una copy de security del directory de trabajo, y de esa manera puedo get los últimos files del control de fuente, y build el DLL rápidamente, todo sabiendo que el otro (en progreso) los cambios son seguros.

El problema es que ahora he acumulado un montón de carpetas de respaldo en cada directory de proyecto, lo que hace que sea más difícil encontrar el cambio específico que estaba buscando. aunque mis prácticas han evolucionado hasta el punto de que siempre me tomo el time de dar a cada carpeta de copy de security un nombre informativo, estoy empezando a pensar que sería mejor que escribiera mi propia herramienta.

Por ejemplo: si selecciono algunas carpetas en el Explorador de Windows, me gustaría tener mi propio elemento de menu contextual que active mi propia aplicación de respaldo. Esta aplicación me pedirá un nombre de copy de security y una descripción. A continuación, movería las carpetas seleccionadas a un directory de copy de security centralizado específico, donde también generaría un file 'readme.txt', que resumiría los detalles de la copy de security. Además, las copys de security también se organizarían por date / hora. Creo que esto refinaría mi procedimiento de respaldo y facilitaría futuras búsquedas.

Pero aún así, no puedo evitar preguntarme si ya existen tales herramientas . Sin duda, alguien debe ser tan obsesivo como yo cuando se trata de copys de security.

¿Conoces alguna herramienta que pueda ayudarme a mejorar mis copys de security?

Soy consciente de esta publicación , pero no estoy exactamente alineado con lo que quiero. Preferiría mantener las copys de security en la misma máquina; me las arreglaré para moverlas a otras máquinas.

Actualizar

Para aclarar: si estoy trabajando en la Tarea A, y de repente necesito build algo para un cliente (Tarea B), tengo que hacer una copy de security de lo que tengo hasta ahora para la Tarea A, y get lo último del control fuente en el directory de trabajo . Luego comienzo y termino la Tarea B, y luego restauro la Tarea A. Este es un escenario ideal y orderado. Pero a veces, solo vuelvo a la Tarea A una semana más tarde o más, porque me tocó la Tarea C, la Tarea D, etc., todo lo cual afecta el mismo proyecto. Ahora, si estos cambios están progtwigdos para ser registrados, entonces probablemente me beneficiaría de registrarlos a medida que avance (pero para ser honesto, generalmente esperamos hasta que esté completo antes de registrarlo, en esta empresa, eso significa less checkins de código sin terminar). Así que no estoy seguro de si cada una de mis copys de security debe ser igual a una sucursal, porque a veces soy excesivo con mis copys de security.

Creo que lo que quieres es un sistema de control de versiones distribuidas, como git.

En primer lugar, su sistema de control de fuente existente probablemente ya puede soportar esto, en forma de twigs. En lugar de simplemente copyr el directory de trabajo, confírmelo como una twig separada, donde puede conservar la versión de la aplicación de ese cliente.

Sin embargo, como dijo skiphoppy, un sistema de control de fuente distribuido sería mucho más adecuado para esto. Me gusta mucho Bazar, pero git también es muy popular (aunque no sé qué tan bueno es su soporte de Windows, ya que es principalmente una herramienta * nix desarrollada para el kernel de Linux)

Subversion utilizando TortoiseSVN le proporcionará esta funcionalidad. Los conceptos son diferentes (revisiones, no "nombres de copy de security"). El file readme.txt que menciona se resume en el logging de Subversion. Cualquier comentario que proporciones puede usarse para guiar a otros que miran la revisión. Consulte la página de Wikipedia en Subversion , así como la página de inicio para downloadlo y TortoiseSVN .

CloneZilla, realiza una copy de security de toda la partición del disco duro, es gratis y confiable. Lo uso en lugar de Acronis Echo Server, y restaura todo mi sistema en 8 minutos.

Como dice skiphoppy, un DSVN realmente puede ayudar. Git ofrece la posibilidad de dejar de lado las cosas en las que está trabajando ahora para que su copy de trabajo esté limpia y, sin embargo, pueda retirar su dispositivo de trabajo actual de la estantería cuando haya terminado. Eso parece lo que realmente quieres.

Si está usando Perforce, hay un par de utilidades basadas en tar que también lo hacen, pero aún no las he usado.

¿Qué tal si cambias tu forma de trabajar? Parece que algún día las cosas se pondrán feas si continúas como está. Bastante bien sobre la necesidad de build un dll a mitad de path a través de un cambio y tener que hacer una copy de security de su trabajo en progreso, pero una vez hecho el lanzamiento, vuelva a integrar sus cambios con la versión de lanzamiento inmediatamente. Nunca me permitiría tener varias copys de security de la misma aplicación, pero hey, ese soy solo yo.

Utilizo Hybrid Backup http://www.hybridbackup.com.au – con sede en Australia, eran las únicas personas reales con las que podía hablar que podían manejar exactamente lo que quería. No tengo problemas de DLL. Tengo más de 1000 files que cambian todos los días y cada vez que alguien lo hace. en mi oficina hace cualquier cosa – tengo más de 250gb de datos en vivo que necesito respaldar cada noche con cada cambio que alguna vez haya hecho – siempre – básicamente puedo ser bastante flojo y copyr files por todos lados y copyr directorys para asegurarme de que todo sea una copy de security pero sabiendo que cada cosa que cambié todos los días (incluidas mis copys de security de directory) está respaldada y puedo remezclar un file que sé que tenía y ver mis copys de security exactamente como estaban hace 5 meses, eso fue todo, pero lo más importante se sincroniza con 2 lugares diferentes, brisbane y sydney, así sé que todo es seguro; incluso me enviaron una bóveda / server de copy de security externa para almacenar todo. Cuesta un poco, pero el negocio es información de la cual soy y estoy seguro la mayoría de las otras personas.

de todos modos, solo estoy tratando de señalar que debes tener un sistema de respaldo increíble para que no te preocupes por esas cosas para empezar.

Creo que es una práctica bastante razonable verificar cada noche. A veces me logging 3 o 4 veces al día, a veces 20 (en realidad, cada vez que mi código está funcionando).

Si su código está siempre registrado, debería poder sincronizar fácilmente con una twig diferente sin realizar una copy de security.

Si no puede verificar sus cambios al final del día, una respuesta muy razonable es descartarlos. Lo más probable es que estés en un agujero del que tendrás problemas para desenterrarlo, y al día siguiente replicarás el trabajo en una hora y lo harás MUCHO MEJOR que la primera vez. Además, si vas tan largo con un código roto, ¿cómo testings?

Finalmente, si su código REALMENTE no puede ser registrado en la construcción todos los días (en realidad sucede en algunas situaciones, independientemente de lo que dije en el párrafo anterior), bifurque.

No más copys de security.

Yo suelo:

ZenOK Online Backup para mis documentos y pequeños files (fotos, videos y files grandes)

Quiéralo.