Hola a todos Decidí escribir una hoja de trucos para el futuro en mayor medida, pero tal vez sea útil para otra persona.
Seguramente, los especialistas en git lo saben todo muy bien, pero en Habré están buscando soluciones a sus problemas y hay muchos principiantes novatos, como yo, que son más lectores, no escritores.
Introduccion
Todo comenzó con cómo comencé a pensar ... Y pensé en lo interesante que sería organizar mis productos caseros de manera confiable para no perder en caso de nada, y preferiblemente usando correctamente git y similares.
Por supuesto, muchos dirán
github . Sí, por supuesto, una buena solución, pero ... La hay, pero tal solución.
No todos los productos caseros quiero difundir en el dominio público. Algo es simplemente vergonzoso para que otros lo vean, algo que no quiero mostrar, al menos por un tiempo. Y los repositorios cerrados en GitHub están disponibles solo en una cuenta paga.
Pero productos caseros: este no es el nivel por el que desea pagar mensualmente. No generan ingresos, pero están escritos para el alma que ha programado el pasatiempo de su vida.
Y luego volví mi atención a mi computadora portátil para tales actividades, y allí, por casualidad, resultó tener licencia de Windows 8.1, en el que un elemento como OneDrive siempre apareció y cayó en mi brazo.
Quién no sabe, esta es una unidad de microsoft en la nube para titulares de cuentas.
¿Y por qué no organizar un repositorio git en esta nube?
Empecé a buscar información sobre este tema, algo no apareció en la Internet de habla rusa en absoluto, había algo de información sobre los extranjeros, pero por alguna razón no había una solución adecuada para mí.
Mirando hacia el futuro, diré que necesita enlaces en el direccionamiento git, pero no en las rutas de Windows, que indican la unidad, etc.
Muchos sugirieron instalar un curl de utilidades de consola adicional o similar, pero realmente no quería hacer esto y seguir adelante con las ventanas estándar y las herramientas de cliente git para Windows.
Por lo tanto, recolecté migas de varias fuentes en una solución de trabajo, al menos para mí.
Tengo 5 GB de espacio libre disponible, no mucho, pero más que eso para mis necesidades. Entonces, ¿por qué desaparecer bien?
Si a alguien le parece demasiado pequeño, siempre puede comprar más lugares.
Bueno, me estoy desviando del tema. Y así, procedemos a la organización del repositorio mismo.
Supuestos
Especifique de inmediato algunos detalles, para facilitar la comprensión de las siguientes acciones.
Vayamos a OneDrive y creemos un directorio git en el que colocaremos todos nuestros repositorios.
Digamos que nuestro nombre de usuario es Usuario.
Luego, la carpeta para sincronizar OneDrive se ubicará en:
C: \ Users \ User \ SkyDrive \ .
Ya debería tener el directorio git creado por nosotros.
Bueno, por ejemplo, organizaremos el proyecto proyecto1.
Inmediatamente en él crearemos un archivo .gitignore para excepciones que no necesitan comprometerse.
Como estoy escribiendo en Python, mi archivo contiene lo siguiente:
*.gitignore *.log *.pyo *.pyc __pycache__/
En el actual que estoy usando, los archivos pyo y pyc compilados en python 3.5 ya se agregaron a la carpeta __pycache __ /, por lo que si tiene esta línea, no puede escribirlos, pero cuando comencé con python 3.3 estaban al lado de los archivos de código fuente, por lo que se quedaron. No interferir y bueno.
Para proyectos django, se agregan las siguientes líneas a las anteriores:
db.sqlite3 staticfiles/
Por supuesto, al iniciar django en cualquier hosting, la base de datos será más seria, por ejemplo, postgres, o lo que proporciona el hosting. Pero durante el desarrollo, puede usar el viejo sqlite para la depuración.
abra el menú contextual en el directorio del proyecto con el botón derecho del mouse y seleccione el elemento
"git bash here" allí.
Creo que al instalar el cliente git seleccionó la opción de integrar en el explorador.
Esto es importante para usar en la ruta al repositorio
~ (tildes) . Dado que la consola estándar de Windows no sabe cómo trabajar con este símbolo, en bash significa el directorio de inicio, y la ruta que nos interesa es en realidad
C: \ Users \ User \ .
Este modo es necesario solo por primera vez cuando se crea un repositorio para asignar un enlace al repositorio en la configuración local de git del proyecto.
Todo el algoritmo de acciones.
En la consola de git bash, escriba las siguientes instrucciones.
Les daré una lista completa de una vez, y luego nos expandiremos en detalle.
git init git add --all git commit -m "init" git init --bare ~/SkyDrive/git/project1.git git remote add OneDrive ~/SkyDrive/git/project1.git git push -u OneDrive master
Analizaremos cada paso en detalle
1.
git init
Simplemente cree un repositorio de proyecto git local vacío en la carpeta del proyecto.
git add --all
Esta acción está destinada a agregarse para indexar todos los archivos en el directorio y sus subdirectorios, por supuesto excluyendo el contenido del archivo .gitignore.
También puedes usar:
git add .
Pero agrega todos los archivos del directorio, sin incluir los subdirectorios.
Por lo tanto, depende de la complejidad de su proyecto. Para quién es más conveniente usar, elija usted mismo.
3.
git commit -m "init"
En realidad nuestro primer compromiso. Hasta ahora, localmente, sin agregar al repositorio en la nube.
git init --bare ~/SkyDrive/git/project1.git
Y aquí está la primera llamada al repositorio remoto. Aquí creamos un repositorio para este proyecto.
Importante! Se requiere el interruptor --bare. Le dice que cree una rama maestra en este repositorio. Aunque está vacío hasta ahora.
.git al final del camino después del nombre del proyecto no es necesario, pero, según tengo entendido, esta es una tradición bien establecida. En cuanto a mí, es bastante conveniente, no veo ninguna razón para cambiarlo.
git remote add OneDrive ~/SkyDrive/git/project1.git
Y aquí le damos el nombre de OneDrive para nuestro enlace al repositorio remoto.
6.
git push -u OneDrive master
Y el último paso es subir el contenido de nuestro proyecto a la rama maestra del repositorio remoto.
Tal registro es necesario solo por primera vez, para llenar la rama maestra. En el futuro, puede usar el estándar:
git push
.
Y el modo git bash ya no es necesario. También es posible trabajar más con git en este proyecto desde la consola normal de Windows.
Bueno, eso es todo. Una manera muy simple, pero te permite unirte al mundo de los desarrolladores reales y sentirte casi como un profesional.