¿Es posible establecer un flujo de trabajo adecuado entre dos repositorys en git?

Decidí usar VCS para la synchronization entre mi computadora portátil y la computadora principal. En ese momento, me gustó mucho bzr, así que lo usé. El flujo de trabajo era simple: en la máquina principal tenía una secuencia de commands, que detectaba la apariencia de una computadora portátil cercana y se ejecutaba siguiendo los siguientes pasos:

  • tracción bzr
  • bzr actualización
  • bzr push
  • ssh a la computadora portátil, actualice el repository allí

Ahora, me estoy moviendo lentamente hacia git – no la última razón para eso es la velocidad superior de Github y git. Pero no pude configurar el mismo flujo de trabajo con git. En primer lugar, se negó a ingresar al repository revisado; lo resolví con receive.denyCurrentBranch = "warn", y haciendo reset de git –hard. Pero de esta manera, pierdo los cambios que hice en mi computadora portátil, si no estaban comprometidos. Intenté usar "git reset –merge", pero (a diferencia de bzr) se negó a fusionar algunos de los files en conflicto.

¿Hay alguna manera de resolver estos problemas con git?

Es totalmente factible con git, pero me parece que o no estás describiendo tu entorno por completo (¿por qué push? ¿Dónde está el "origen"?), O estás confundiendo términos entre bzr y git.

En la "computadora principal" (es una buena idea que el repository principal no se cambie y sea un repository "vacío", o que tenga un tercer repository de origen):

git commit -am "Auto committing"

no hay necesidad de presionar aquí.

entonces ssh a la computadora portátil:

git pull <main_computer's remote> master

Esto se proporciona si ambos están actualmente en la misma twig, es decir, maestro, por supuesto. Hay forms más sofisticadas de hacerlo de manera más segura, pero para el caso más simple de 2 máquinas y ningún tercer origen, esto debería funcionar. Finalmente, puede configurar la estrategia de combinación para colisiones, ver git help merge