jueves, 26 de diciembre de 2013

Como contribuir con el proyecto Puppy_es Os Badass desde Github

Como todos saben estamos tratando de tener un Puppy que venga con nuestro idioma predeterminado y además que sea funcional, capaz de adaptarse a las necesidades de un usuario nuevo-intermedio, que pueda servir a futuras generaciones a conocer el territorio linux.

Para eso el proyecto Puppy-es se llevará de ahora en adelante atravez del famoso control de versiones llamado Github.
Puppy-es_os Codename Badass es la continuación de Night Rc

Por que github?
Como saben los proyectos comunitarios necesitan algún tipo de organización, pero a veces todos los involucrados no tienen los mismos horarios, difieren la forma de pensar o simplemente no tienen tiempo de andar leyendo correos,  github es una forma de consolidar todos nuestros esfuerzos, de forma clara, transparente y con resultados en el momento en que se hacen los commits.

Un ejemplo sencillo para Puppy por favor.
Vamos a suponer que usan puppy badass o simplemente lo prueban y tienen el deseo de colaborar con el proyecto, entonces probándolo descubren algún detalle por muy mínimo que sea ejemplos: errores de ortografía, configuraciones de inicio que pueden ser mejoradas, funciones que un programa debería hacer por defecto y no lo hace, un icono mal hecho, errores al correr cualquier software o aplicación, etc). En ese caso si alguno supiera como solucionar esos problemas facilmente puede proponerlos en github, subirlos y al instante los otros desarrolladores los revisan y pueden ellos hacer sus propias modifaciones, obteniendo como resultado "Trabajo en equipo".

No me gusta Puppy, no lo usaría ni en un millón de años.
Todas las personas que de una u otra manera usan Linux y conocen sobre el software libre, tienen diferente forma de pensar, diferentes aficiones, diferente nivel intelectual y educativo, cualquier proyecto puede llevarse via github, esto no se trata de puppy unicamente, también se trata de llevar nuestros proyectos comunitarios y personales de forma adecuada y efectiva.

Ok me convenciste de usar github para ayudarte con el proyecto, ahora que?
lo primero que debes hacer es instalar el paquete git en tu versión de puppy
configurar 
clonar el repositorio donde se llevaran las actualizaciones badass
realizar algun cambio
Subir tus mejoras al repositorio remoto

Paquete git-1.8.4.2.pet

Nota:  Si quieres saltarte la configuración mi amigo D-coy en el canal #puppy-es en irc escribió un excelente script que reduce los pasos abajo explicados, ver enlace

Script para configurar github y clonar repositorio remotos

Una vez instalado procedemos a configurar
abres terminal y escribes los siguientes comandos

git config --global user.name tu-usuario              ejemplo git config --global user.name nilsonmorales
git config --global user.email tu-correo                ej: git config --global user.email nilsonmorales@hotmail
git config --global core.editor geany                    tu editor de texto ( se usa algunas veces )
git config --global core.pager ''                   
git config --global color.ui true                            Agregamos un poco de color
git config --global http.sslVerify false                  Para no tener problemas con el certificado SSL
git config --global push.default matching
git config --global push.default simple
git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"

Este ultimo para agregar un alias par nuestro log

Bien ya pasamos la parte aburrida.
Ahora clonemos el repo badass con este comando

git clone https://github.com/nilsonmorales/Badass

veran algo como esto
└─[Badass][$] git clone https://github.com/nilsonmorales/Badass
Cloning into 'Badass'...
remote: Counting objects: 4, done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 4 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (4/4), done.
Checking connectivity... done

bien el repo se clonó en /root/Badass
nos ubicamos dentro del repo con este comando

cd /root/Badass

ahora si quieren ver el registro ya que acabo de crear el repo hacen este comando

git lg 

└─[Badass][$] git lg
* 0033e0b - (HEAD, origin/master, origin/HEAD, master) Initial commit (2 hours ago) <nilsonmorales>


ahi tienen el archivo Readme y la licencia lo que significa que aun no he hecho ningún commit relacionado al proyecto, entonces voy a proceder a hacer un cambio.
Veamos algo que se me paso por alto fue cambiar la imagen del grub cuando se haga una instalacion frugal, la versión badass conserva la antigua imagen de nightrc así que vamos a hacer un commit de eso.

entonces vamos a imaginarnos nuestro directorio /root/Badass como si fuera nuestro sistema de archivos principal.
Como yo sé que dicha imagen se aloja en /usr/share/grub4dos/ creare los directorios de esa manera dentro del directorio Badass y agregaré la imagen. Puedes ver lo que vas haciendo con el comando 

git status

 └─[Badass][$] git status
# On branch master
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#    usr/
nothing added to commit but untracked files present (use "git add" to track)



Bien ahora git me dice que no tengo nada agregado para comitear, pero que he trabajado en el repo y que puedo usar el comando git add para agregarlos al track.
Si fuesen varios archivos hacemos el comando git add . para agregarlos todos 

git add .

Ahora si vuelvo a hacer un git status verán los cambios 

 └─[Badass][$] git status
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#    new file:   usr/share/grub4dos/splash.xpm
#


ahora ya agregamos los cambios y están listos para ser commiteados entonces heremos el commit y le pondremos algún mensajes usando este comando 

git commit -m "Cambiando imagen de grub4dos" 
  
Las comillas son importantes a la hora de adjuntar un mensaje al hacer commit 
  └─[Badass][$] git commit -m "Cambiando imagen de grub4dos"
[master acbae7d] Cambiando imagen de grub4dos
 1 file changed, 417 insertions(+)
 create mode 100644 usr/share/grub4dos/splash.xpm


Bien ya trabajamos en nuestro repositorio local, hicimos nuestros cambios ahora solo falta mandar esos cambios al repositorio remoto en Github, para eso utilizaremos el comando push así:

git push 

Nos preguntara nuestro usuario y contraseña

 └─[Badass][$] git push
Username for 'https://github.com': nilsonmorales
Password for 'https://nilsonmorales@github.com':
Counting objects: 7, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (6/6), 11.54 KiB | 0 bytes/s, done.
Total 6 (delta 0), reused 0 (delta 0)
To https://github.com/nilsonmorales/Badass
   0033e0b..acbae7d  master -> master


Bien ahora si vamos al sitio web del repositorio veremos el cambio.
También haciendo git lg puedes verlo 

 └─[Badass][$] git lg
* acbae7d - (HEAD, origin/master, origin/HEAD, master) Cambiando imagen de grub4dos (8 minutes ago) <nilsonmorales>
* 0033e0b - Initial commit (2 hours ago) <nilsonmorales>


Ahí están el primer commit y el cambio que hicimos a la imagen de grub4dos
Usar git es mas extenso que esto, pero es un principio. Seguiré editando este tutorial con otros ejemplos, este es uno de miles de tutoriales sobre git puede que talvez tenga errores pero este me ha servido para llevar el proyecto via git, espero que les halla servido y por favor comenten.
 

No hay comentarios:

Publicar un comentario