¿Por qué debería presionar si estoy trabajando solo en un repositorio local?


21

Estoy interactuando con Git a través de GitHub para Windows , lo cual es divertido ya que nunca enviaré mi repositorio a GitHub. Estoy trabajando solo y está destinado a ser utilizado solo por mí. Noté que mis confirmaciones se enumeran en "confirmaciones no sincronizadas" y en "historial" dice "no confirmaciones". Lo que me lleva a la pregunta, ¿qué lograré presionando, excepto mis compromisos enumerados en "historial"?


14
Hay una falta de comprensión significativa en la pregunta que vale la pena señalar: si no ha empujado nada de forma remota, todo su trabajo está en el repositorio local en el disco. Pierde tu máquina, pierde todo lo que hiciste.
Lars Viklund

Respuestas:


40

Es técnicamente correcto: no es necesario presionar si no comparte el código con nadie.

Por otra parte, su computadora portátil tiene un disco duro hecho por el mejor postor. Su casa podría incendiarse antes de que falle el disco duro. Es posible que desee ver su código de forma remota. O incluso compartirlo con alguien.

Ahora, con Github, requieren que todo sea público o que deba pagar por repositorios privados. Entonces, si desea guardarlo para usted, puede consultar Bitbucket, que le permitirá hacer git pero también cuenta con repositorios privados gratuitos.

Otra opción sería guardar su repositorio de git en algún lugar que tenga una copia de seguridad remota. Pero hay pocas ventajas al hacer esto en lugar de solo usar un proveedor de SCM en la nube en estos días.


BitBucket ofrece una cantidad prácticamente ilimitada de repositorios privados de forma gratuita .

Hay muchas razones para presionar. El flujo de trabajo realmente no cambia tanto. Usted trabaja commit, commit, commit, finaliza un flujo de trabajo y empuja ...
Rig

7

Hay otra razón por la que le gustaría pasar a un repositorio (incluso si es, de una forma u otra, local): estaciones de trabajo .

No sé sobre usted, pero trabajo en 4 computadoras diferentes (1 PC en casa, 1 computadora portátil, 1 PC de oficina y 1 computadora portátil de oficina) y empujar los cambios a un servidor Git configurado correctamente en el servidor de mi empresa hace que la sincronización sea rápida y sin dolor. Dado que Git es un DVCS, está aprovechando esa ventaja: no solo son copias de seguridad, sino que todas las diferentes bases de código en las que estoy trabajando se pueden combinar, verificar y analizar fácilmente.

Puede ser local si, por ejemplo, su PC doméstica es el "servidor" (o el origen) y tiene una computadora portátil doméstica, de esa manera puede mantenerse fácilmente sincronizado.

Nota al margen : la gente suele decir "Prefiero usar Dropbox (o cualquier otro servicio de sincronización)". La gran cantidad de objetos que tiene un repositorio de Git hace que sea ridículo usar Dropbox de esa manera. Es una opción, pero no diría una buena.


+1, definitivamente haría lo mismo en tu caso. ¿Qué haces si olvidaste de presionar en casa y ahora estás en el trabajo?
Moshe Revah

2
@Zippoxer Céntrate en otra tarea y únete más tarde.
bytebuster

Exactamente, lo que dijo @bytebuster. ¡Esa es la belleza de los DVCS! (Aunque, con suficiente práctica, ¡no lo
volverás a

Alternativamente: trabaje en un proyecto paralelo / hobby para relajarse o explorar nuevas ideas, etc. :-)
johannes

6

Como SCM distribuido, git distingue entre los conceptos 'hacer una instantánea de la copia de trabajo' (commit) y 'repositorios de sincronización' (push / pull / fetch).

Si solo tiene un clon local de su repositorio, entonces no tiene sentido presionar. Sin embargo, con github, que hacer que otro clon (la que está en GitHub), y empujando sus cambios no tiene al menos una ventaja: la copia de seguridad. Si su computadora se apaga, todavía tiene todo empujado hasta ahora en github.

Por supuesto, ese no es el propósito principal de github; github está destinado a compartir código, por lo que si su proyecto está en github, puede permitir que otros saquen de allí, clonen su proyecto, actúen según las solicitudes de extracción de sus clones o incluso den acceso de empuje a otros a su repositorio.

Otra razón para presionar es si usa varios clones locales. Esto puede ser útil para varias cosas: por ejemplo, es posible que desee trabajar en dos ramas diferentes al mismo tiempo, o puede que desee probar operaciones posiblemente destructivas en su repositorio; si todo funciona según lo previsto, conserva el clon modificado (o devuelve los cambios al repositorio original), pero si las cosas van hacia el sur, puede eliminar el clon desordenado y volver al original (que aún no ha cambiado) .

Algunas personas incluso usan git para la implementación: la versión de producción también es un repositorio de git, y la actualización a una versión más nueva es cuestión de buscar y pagar (obviamente, esto solo funciona si no necesita un paso de compilación). No lo recomendaría necesariamente para cosas serias, pero para cosas pequeñas es una solución simple y pragmática.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.