2008-08-18 10 views

Respuesta

6

que he visto de control de versiones que se utilizan para otros fines de código fuente, no como,

  1. archivos de esquema - un conjunto de archivos de esquema XML que representan un esquema mundo real
  2. Los archivos de contenido - contenido representada en un formato específico, esto está vinculado a un diseñador en VStudio, utilizando control de código fuente, permite que la historia, rollbacks todo, sin la interacción de base de datos

en los dos casos nos damos cuenta de que es básicamente archivos detallados, las razones principales para tener estos archivos s en el control de código fuente en lugar de "registros de texto en la base de datos", es que

  1. archivos que podrían necesitar capacidad de comparar las versiones
  2. historia (porque varios usuarios trabajan en ellos)
  3. capacidad de revertir a una versión anterior
  4. etiquetado y libera al obtener una etiqueta específica
  5. si utiliza Team Foundation (TFS), el conjunto de plantillas de scrum con elementos de trabajo, etc
  6. ninguna base de datos involucrados, ningún desarrollo adicional para todos los a bove
3

Edito una gran cantidad de documentos en LaTeX, entonces uso SVN para almacenar los archivos e imágenes de tex y más. Es útil para hacer Difuntos, y con suerte me salvará si tengo un desastre.

2

Tengo una carpeta en la ruta llamada bin con herramientas útiles como las de sysinternals y otras. Yo uso svn para mantenerlos actualizados en diferentes máquinas. Además, cosas como los scripts de PowerShell, los archivos vimrc, etc. son geniales para mantener centralizados.

2

Nunca pensé en usarlo para cosas personales, pero en proyectos de software, comprobé casi todo lo que no se puede regenerar en una fecha posterior (ejemplos de esto incluyen ejecutables y documentos generados por código). La documentación siempre se registra. Las presentaciones a los clientes se registran y etiquetan junto con la base de código utilizada para la demostración, si hubo una demostración.

Estoy pensando SVN y CVS no son "amigos" lo suficiente como para usuarios no técnicos, pero tengo curiosidad ahora que la utiliza, posiblemente, para el control de versiones para proyectos de ingeniería no ...

3

En general, todo lo que el proceso de construcción necesita lo pongo en el control de la fuente. El único problema que surge es si tiene resoruces preparados por otros departamentos, p. Marketing, que va en su instalación, por ejemplo.

2

La mayoría de la documentación será vista por más de un par de ojos humanos. Es increíblemente útil, por ejemplo, durante las fases de planificación del proyecto cuando el analista actualiza el documento de requisitos y le gustaría ver qué cambió desde la última vez que lo vio. Los wikis también tienen esta funcionalidad, natch. Utilizamos SharePoint para estos fines, pero elija su proveedor.

5

En uno de mis primeros trabajos, utilizamos CVS para el control de revisiones de DNS. Era principalmente una forma barata y sucia de hacer una copia de seguridad de los archivos de zona.

También he oído hablar de personas que usan un sistema de control de versiones para sus directorios personales.

5

Durante mi último semestre en la escuela, tomé dos clases, cada una de las cuales tenía un gran proyecto que exigía mucho tiempo al final del semestre. Ambos también requirieron varios papeles largos durante el semestre. Hice un uso intensivo de SVN para ambas clases para rastrear cada cambio que hice en cada papel y proyecto.

Soy más un tipo de persona que escribe "todo a la vez" cuando se trata de escribir, y tiendo a perder la cabeza cuando intento extender el proceso en varias sesiones. Ser capaz de diferir las últimas revisiones de mis documentos me facilitó volver a encarrilarme.

1

Uso el control de revisión para casi todos mis documentos para cualquier propósito.

Estoy usando Mercurial, por lo que la creación de un nuevo repositorio en un directorio determinado es una cuestión de un simple "hg init", que me pareció mucho menos complicado que configurar un nuevo repositorio de Subversion.

También he descubierto que RCS es excelente en cualquier situación en la que necesite sincronizar archivos: ahora estoy usando eso en lugar de rsync para todas mis necesidades de sincronización. También es más fácil hacer copias de seguridad: clonar un repositorio en otra ubicación/máquina/disco significa que puedo simplemente enviar los cambios a esa ubicación, lo que es aún más fácil con un repositorio de inserción predeterminado. Si no modifica en el repositorio remoto, entonces ni siquiera tiene que preocuparse demasiado por configurarlo de manera diferente a la predeterminada.

Una de las mejores cosas para mí es que puedo tener sincronización, copias de seguridad o lo que sea en cualquier sistema al que tenga acceso SSH. (¡Bueno, si me instalaran mercurial en Uni, podría!)

0

Sí, tengo un directorio doc en git. Contiene una lista de tareas pendientes, un calendario y algunos otros documentos.

0

Uso el SVN para verificar los cambios en los archivos de configuración del servidor Asterisk VOIP. Tengo un repositorio con una carpeta que corresponde a cada uno de varios servidores. Esa carpeta contiene todo el contenido de/etc/asterisk.

0

He utilizado Subversion para todo, desde control de fuente, entornos de compilación, scripts de instalador y toda esa bondad de desarrollo. También he configurado un repositorio para usuarios no técnicos para archivos binarios, en este caso documentos antiguos de Excel y Word. Funcionó bien teniendo en cuenta que perdimos cualquier funcionalidad de fusión. Pero permitió a todos nuestros usuarios obtener una tonelada de información que fue editada principalmente por dos o tres personas con bastante facilidad. Y con instrucciones sencillas sobre cómo actualizar antes de realizar cualquier edición (bloqueo si es necesario) y luego lidiar con conflictos (verificar qué se actualizó y luego eliminar su copia y realizar una actualización), pudieron manejar bastante bien el repositorio, aunque no estoy seguro de que alguna vez les haya gustado. :)

2

Utilizo mucho el control de versiones para archivos comunes, porque tengo una laptop, una máquina de escritorio en el trabajo y un escritorio doméstico en el que también trabajo mucho (trabajo desde casa dos días a la semana) .

Una nueva sesión en cualquiera de ellos comienza con un script llamado 'start' que actualiza un conjunto de cajas, y termina con un script llamado 'stop' que compromete algunas cosas a VCS, o me muestra al menos las modificaciones.

lo uso para:

  • mi un archivo Organízate lista de tareas (ver yagtd, la herramienta que uso)
  • mi base de datos contraseña (que debería haber enviado en esa sugerencia a la Stackoverflow podcasts en respuesta a la pregunta de Joel)
  • todas mis notas y archivos al azar en proyectos
  • un montón de hojas de cálculo (incluido uno que rastrea algún día las cosas personales por día)
  • algunas imágenes (como los avatares web que uso)

Además, he escrito algo sobre Subversion para administrar los archivos de configuración para ambos sistemas y mis cuentas de usuario. Tengo tantas cuentas en tantas máquinas, y estaba cansado de volver a aprender cómo configurar mi shell/vim/... así que ahora también guardo la mayoría de esas cosas en control de versiones. Eso incluye archivos de firma de correo electrónico, un conjunto de scripts de shell en $ HOME/bin, ...

+0

Hola Thomas, ¿podrías explicarme un poco más sobre la base de datos de "mi contraseña"? ¿Qué quieres decir? – Vin

+0

Quizás esté hablando de una base de datos KeePass. –

1

En mi empresa, el grupo de desarrollo pretende utilizar Subversion para casi todos los documentos electrónicos. Esto depende de poder "bloquear" los archivos que no se pueden fusionar, como los documentos de Excel. SVN proporciona la función "requiere bloqueo" y el flujo de trabajo de compilación, modificación y compromiso es razonablemente directo.

Los ingenieros de software están a bordo, pero hay cierta resistencia por parte de los ingenieros mecánicos. Quieren utilizar las funciones simultáneas de edición colaborativa de Excel, por ejemplo. No se han adaptado al bloqueo, a la modificación ni al compromiso del flujo de trabajo.

TortoiseSVN le permite diferenciar documentos de Word, que me parece extremadamente útil útil. También es compatible con la fusión al parecer, aunque he sido demasiado gallina para probar esa característica ...

Me gustaría considerar seriamente un DVCS como git o Mercurial. Pero a menos que pueda bloquear archivos de formato de archivo binario (es decir, no fusionables) (convirtiéndose así más bien en un modelo centralizado para dichos archivos), y/o combinar los formatos de archivo binario que usamos, no se ajustará al uso de mi compañía.

Deseo que todas las compañías de software proporcionen buenas herramientas de diferenciación y combinación para sus formatos de documentación patentados. Eso aumentaría el valor de los sistemas de control de versiones para formatos de documentos patentados.

+0

http://stackoverflow.com/questions/119444/locking-binary-files-using-git-version-control-system –

Cuestiones relacionadas