Trucos sobre manejo de softwarelibre y gnu linux. También a los programas que hago en gambas3, python, java, etc.... Consejos y trucos sobre otros programas: excel, word, internet, instalación de programas, Arduino y demás....
Dedicado a mis proyectos en Gambas ,un lenguaje de programación parecido al Visual Basic + Java pero ampliamente mejorado y...¡¡para gnu/linux!!.La potencia del gnu/linux sumada a la facilidad del Basic
Consultas, Desarrollo de programas y petición de presupuestos:
Gestión de proyectos Software con Git y GitHub en MiriadaX
No te puedes perder esta oportunidad de conocer y empezar a trabajar con Git, un sistema de gestión de versiones de proyecto de software:
"Este MOOC capacita en el uso de las herramientas Git y GitHub para el control y la gestión de proyectos software donde el desarrollo de los programas se realiza por equipos de personas distribuidas, que utilizan la herramienta Git, y comparten repositorios en el portal GitHub (https://github.coml).Es un curso pensado tanto para principiantes que empiezan, como para personas con experiencia en programación que quieren conocer estas herramientas con mayor profundidad. El curso utiliza ejemplos muy sencillos de aplicaciones Web de cliente en HTML y JavaScript y es necesario tener conocimientos básicos de programación.Es un curso eminentemente práctico donde se deben realizar modificaciones y mejoras a un proyecto sencillo que se utiliza como base de la explicación y de los ejercicios prácticos a realizar."
En github, el sitio web que usa git, para la gestión de versiones de software, hay dos formas de colaborar en el desarrollo de un proyecto: a) Subir cambios pero el coordinador del proyecto se encarga de aceptar o rechazar los cambios.
Del proyecto se crea un fork, (una copia del proyecto), que podrás modificar y subir cambios (a tu fork), y cuando lo estimes oportuno, le mandas tus cambios al coordinador del proyecto (Pull Request) , para que este decida si admite los cambios o no y los mezcle con la rama actual.
Esta forma lo he visto explicado en muchos sitios, y es ideal por su facilidad, para proyectos como añadir traducciones a programas. Lo he visto explicado en varias páginas, os dejo los enlaces:
Esta forma es más sencilla, me la explico Tincho (del foro de gambas-es.org) ya que los colaboradores suben sus cambios y se mezclan con el proyecto principal, sin necesidad de que alguien (el coordinador o creador del proyecto), tenga que decidir si se mezclan o aceptan los cambios. Aquí es muy importante, la organización y coordinación de los colaboradores, para evitar que aparezcan problemas de sincronización. Por ejemplo decidir que archivos va a modificar cada uno, (para que no se pisen los cambios). Una herramienta útil para estas conversaciones puede ser https://gitter.im
Estos son los pasos para añadir colaboradores a un proyecto de github:
ir a tu proyecto
ir a la solapa settings
Escribir el nombre del colaborador y cuando lo encuentras le das al botón de agregar.
Nota:
El colaborador, tiene que tener cuenta en github, para que aparezca en la lista de "Collaborators"
Una vez hecho esto, el colaborador recibe un mensaje en la cuenta de correo que tenga asociada a github, para aceptar la colaboración :
y partir de ese momento, le va a aparecer el proyecto en su lista de proyectos, y podrá bajar / subir los cambios como si fuera un proyecto suyo.
El "escándolo" de Sourceforge empezó cuando los usuarios de Gimp que se descargaban la versión de para el S.O. Windows de "regalo" se descargaban una adware. Actualmente la organización de Gimp pide que se descargue directamente desde sus servidores (http://www.gimp.org/downloads/ )
Con el proyecto Gambas, también parece que va a tomar el mismo camino, dejar Sourceforge para irse a otro alojamiento (quizás a github) véase este enlace del autor del proyecto Sr. Benoît: Gambas migration to github (or something else?)
También os traigo una noticia que ha aparecido en el blog de http://blog.elementary.io, sobre las razones del abandono de Sourceforger:
"Sourceforge ha ayudado a servir a millones de descargas sin cargo y nos proporcionó grandes análisis, pero nuestro tiempo con ellos se esta terminando. La reciente noticia de adware que se incluye con los instaladores de Windows de aplicaciones populares de código abierto fue lamentable oír. Nadie le gusta cuando incentivos económicos sustituyen a la experiencia del usuario de un producto o servicio que está haciendo grandes cosas, sino la realidad es que hemos sido parte del problema aquí. No hemos pagado Sourceforge un centavo por los petabytes de ancho de banda que nos ha consumido en los últimos años. Somos el adolescente que se libra contra sus padres, gritando "no es justo", mientras freeloading. Por último, hemos despertado y decidimos poner en los pantalones adultos. Nuestro equipo de la web ha estado trabajando duro en el último par de días en la "mudanza". Hemos visto nuestro presupuesto, hecho nuestros deberes, y encontramos una nueva solución de hosting. A partir de ahora, estaremos sirviendo nuestras propias descargas de 6 servidores localizados: 1 en Asia, 3 en Europa, y otro 2 en América del Norte. Ese es uno en todos los lugares ofrecidos por nuestro anfitrión! imagen Nuestros nuevos servidores brillantes residen en el Ocean Digital, que tuvieron la amabilidad de cuenta abuelo Lewis y nos dan la a-bien usar un par de terabytes de ancho de banda de cada mes (Gracias chicos!). Los nuevos sistemas funcionan con SSL en un estándar de "A-", pero para los navegadores que no soportan que todavía se puede descargar a través de HTTP. También llevamos a cabo la transmisión de los mismos servidores para la mejora de las velocidades torrenting. Usted ahora podrá descargar OS elemental directamente de nosotros, sin publicidad. Queremos agradecer a Sourceforge por el tiempo que nos dieron alojamiento para nosotros. No habríamos podido crecer a este tamaño sin su apoyo. Esperemos que esto es sólo un pequeño bache en el camino para ellos y que son capaces de obtener sus problemas resueltos de monetización. Mientras tanto, somos optimistas de que nuestra experiencia de descarga debe ser un poco más agradable. Por último, otro gran agradecimiento para todas las personas que nos han ayudado a financiar. No seríamos capaces de pagar este movimiento sin su apoyo constante! Si desea ayudar a involucrarse con la financiación (o cualquier otra cosa!) No te olvides de la cabeza a la página "Involúcrate" en nuestro sitio web."
Modulo 5. Gestión de versiones de proyectos con git y GITHUB; Proyecto, Espacio de Trabajo y Versiones (Commit); Arboles y Ramas de un proyecto; Repositorios Remoto y colaboración a través de GITHUB
Temas:
Tema 1. GIT. Proyecto, directorio y versión
Tema 2. GIT. Proyecto Quiz 2015 en GITHUB
Tema 3. GIT. GITHUB
Tema 4. GIT. Crear proyecto random con GITHUB
Tema 5. GIT. Crear proyecto random con comandos
Tema 6. GIT. Análisis y gestión del área de trabajo
Tema 7. GIT. Ramas
Tema 8. GIT. Unir ramas: Merge
Tema 9. GIT. Repositorios remotos
Para desarrollara varios proyectos, he usado el control de versiones svn alojadolo en Coogle Code. Como este va a desaparecer, pues ellos mismos te dan la herramienta para que los portes a github. Es una herramienta muy cómoda y lo hace todo ella en un rato.
El caso es que ya tengo los proyectos portados a github, y voy a poner una breve guia para poderlos usar en mi ordenador. Sera algo muy básico Y lo pongo como notas para mi, y lo subo al blog, por si a alguién le interesa
1) Instalar git en tu ordenador $sudo apt-get install git
2) Creamos una carpeta para alojar el proyecto $mkdir ProyectoPruebaGitHub $cd ProyectoPruebaGitHub 3) Configuramos git: $git config --global user.name "Nombre que quieras mostrar"
4) Bajamos el proyecto: $ git clone https://github.com/jsbsan/damasinglesas
Y se crea una carpeta llamada "damasinglesas"
5) Hacemos algun cambio, modificando alguna linea, o añadiendo algun archivo.
Con la orden: $ git status
Nos informa de lo que hemos cambiado con respecto al servidor
6)Actualizamos los cambios
$git add .
7) Enviando Cambios: Commit y push
Y para actualilzar la copia del servidor, hacemos commit: $git commit -m "Cambios del dia de hoy"
Y luego $git push
(nos pedirá la nombre de usuario y clave de github)
8) Recibiendo Cambios:
Si han añadido algo al proyecto, otros programadores, debemos actualizarnos y recibir esos cambios $git pull
Nota: 10/12/2016
Ignorar archivos y directorios en la gestión de versiones:
Si tenemos definido un archivo de texto .gitignore, donde le hemos dicho que archivos o directorios no se tengan en cuenta.El comando seria asi: $git config --global core.excludesfile ~/.gitignore El fichero .gitignore que he echo para gambas es el siguiente:
#ignorar este directorio
.gambas/*
.gambas/
#archivos temporales
*~
#ejecutable .gambas
*.gambas
Asi no me sube los ficheros *.gambas, que normalmente son grandes, ni los temporales *~
Si vuestro proyecto ya esta en funcionamiento, y habéis echo varios commit, tendréis que borrar esos directorio/ficheros usando la orden: $ git rm --cached <file>
Sustituirmos <file> por nuestro archivo/directorio
Nota: 26/12/2016
Video donde se explica, teniendo ya un proyecto ya iniciado en nuestro ordenador, usar git y github para tenerlo gestionado y subido a la nube.