2010-09-03 11 views
13

He estado usando git durante medio año más o menos y no sé si estoy usando git por completo.Git con Dropbox

En primer lugar, he estado experimentando con Dropbox y siento que si puedo incorporarlo a mi flujo de trabajo, sería genial ya que Dropbox es muy conveniente.

  1. Tengo un escritorio y una computadora portátil. Ambos tienen Dropbox.
  2. Inicialicé mis repositorios dropbox por haciendo un git init --bare. Y luego en la secuencia de comandos post-commit de mi Escritorio, Tengo un git push --mirror dropbox.

De esta manera, mi escritorio y mi Dropbox siempre estarán completamente reflejados, lo cual es una buena cosa.

Mi verdadera pregunta es: ¿Cómo debo configurar mi computadora portátil? he estado escuchando algunas sugerencias:

  1. Tire de mi escritorio, por lo que el origen de mi del portátil es de escritorio.
  2. Extraiga directamente de Dropbox para que el origen de mi computadora portátil sea dropbox.

He estado haciendo el número 2, y no sé si estoy haciendo lo correcto. Mi flujo de trabajo incluye:

  1. Cada vez que estoy en mi portátil, me hacen un git pull (desde el origen del portátil es Dropbox y se actualiza dropbox)
  2. Luego, cuando me la salida una rama de la caja de reenvío a un local de rama.
  3. Después de que haya terminado con el trabajo, me comprometo.
  4. Aquí es donde estoy confundido: ¿Debería presionar --mirror en mis repositorios de Dropbox (los repositorios de origen de mi computadora portátil) también? Me estoy haciendo algunas dificultades en esta área: A veces Dropbox no se sincroniza muy bien, etc

En la actualidad, haciendo un git branch -r en mi escritorio después de hacer git push --mirror origin en mi portátil no muestra mi portátil recientemente se compromete. ¿Puede alguien decirme por qué?

He mencionado tirar de mi escritorio directamente porque de esa manera siempre puedo inicializar la extracción y estoy 100% seguro de que la sincronización está hecha.Con Dropbox nunca puede estar 100% seguro de si la actualización se ha llevado hasta el servidor de Dropbox

Respuesta

19

Si desea agregar un contenedor de recompra intermedia, se proporciona bien Dropbox:

  1. utiliza el git bundle format: genera un repositorio simple con solo un archivo (lo que significa que es más probable que Dropbox lo sincronice correctamente con cualquiera de sus computadoras: se trata simplemente de copiar un archivo, no "toda la estructura" de la que se no estoy seguro de que obtenga todo atrás).

  2. Está utilizando un paquete incremental para cada uno de sus rescates (de nuevo, un archivo por guardar, fácil de extraer desde el otro lado para recuperar lo que se ha hecho).
    Nombre su incremento después de la fuente (computadora portátil o computadora de escritorio) y con la fecha.
    Básicamente, extraerá de cualquier xxx.el paquete que aún no haya retirado.

  3. acostumbra lavar todos los paquetes incrementales intermedios, reemplazándolo con un paquete completo de cualquier fuente es la información más actualizada

Ese modelo permite:

  • proceso simple de sincronización (uno o muy pocos archivos)
  • proceso de guardado rápido (con paquetes incrementales)
  • escalado: si hay más de un actor, es decir, si varias personas están actualizando la misma rama, puede aislar sus contribuciones al sacarlas haciendo referencia a sus paquetes utilizando un nombre remoto diferente (ya que cada paquete es un simple repo desde el cual puedes tirar).
+0

perfecto, gracias! Eso es lo que estaba buscando: paquete de git. – binOr

+0

@nevan: gracias por las diferentes ediciones, ¡esa publicación las necesitaba! – VonC

+0

@VonC no hay problema, la publicación me ayudó mucho, así que gracias también. –