jueves, 29 de marzo de 2018

GitHub(4) : Eclipse: Problemas de ubicación de proyectos

CUIDADO y PRECAUCIÓN con las reubicaciones de los proyectos:



  • Cuando en el ventana de Git repositories le damos al botón de Clonar un repositorio, nos pide una carpeta local donde clonarlo.
  • Si tenenos un proyecto en nuestro Workspace de Eclipse y queremos trasladarlo al repositorio remoto, hacemos Team> Share y buscamos el repositorio.
  • Es entonces cuando nos cambia la ubicación del proyecto desde el Workspace de Eclipse al directorio local que guarda la copia del directorio remoto, y entonces desaparece de nuestro Workspace

  • Análogamente si queremos importar un proyecto desde el git remoto, nos lo colocará en el directorio que hemos asignado en local y por tanto nunca lo podremos tener en nuestro Workspace.



miércoles, 28 de marzo de 2018

GitHub (3) : Eclipse : Recoger un proyecto remoto

1. Introducción

Vamos a seguir a StackOverflow.
Hasta ahora, entre las acciones realizadas, estas nos van a servir:

  • Ya hemos creado un repositorio remoto en github (Openweb03). 
  • Hemos abierto la vista Git Repositories

2. Ver el repositorio remoto en la ventana Git Repositories

Vamos a la ventana de Git Repositories y le damos al botón: de la parte superior central que es Clone a Git Repository 



Le damos la URI del repositorio que hemos creado en github:
https://github.com/ximodante/Openweb03.git

Le damos tambien las credenciales de acceso.



Ahora nos pregunta que seleccionemos las ramas (branches), y solo aparece master



Hemos de comprobar que la ruta local no exista. Si existiera deberíamos borrarla previamente.
/home/eduard/git/gitrepos/Openweb03





y le damos Finish y vemos que al cabo de un rato se carga en la ventana de Git Repositories





3. Importar un proyecto desde git

En el menú principal le damos File > Import > Git > Projects from Git > Existing local repository




Vemos que aparece Openweb03 y le damos a Next


Seleccionamos Openweb03 de abajo y Import existing Eclipse projects


Ahora le damos Finish


Y vemos que nos ha creado el proyecto al y como aparece en el repositorio. Además está vinculado al repositorio para hacer los commits.

OJO: El proyecto ya no está en nuestro workspace, sino en la carpeta que nos indica cuando clonamos el proyecto remoto o sea:


/home/eduard/git/gitrepos/Openweb03



martes, 27 de marzo de 2018

GitHub(2): Eclipse : Guardar proyecto existente en gitHub remoto

1. Introducción

Eclipse proporciona herramientas útiles para poder gestionar los cambios e importaciones de proyectos en GitHub. Solamente necesitaremos trbajar fuera de Eclipse para crear repositorior github o eliminarlos o hacer algún mantenimiento extra.

Los requisitos o pasos que vamos a realizar son los siguientes:
  1. Tener una de las versiones últimas de Eclipse y un proyecto java (con su copia de seguridad por si acaso pasa algo inesperado)
  2. Tener un proyecto de trabajo de Eclipse
  3. Crear un repositorio remoto en github
  4. Mostrar las vistas de eclipse relacionadas con "git"
  5. Clonar un repositorio remoto en Eclipse
  6. Vincular el proyecto con el repositorio remoto
  7. Pasar la información al repositorio remoto 

2. Crear un repositorio remoto en github


Suponemos que ya tenemos un usuario creado en github. En mi caso es "ximodante". Ahora vamos al navegador y le damos esta dirección https://github.com/$user (que en mi caso es  https://github.com/ximodante )

Le damos al "+" que aparece en la parte superior derecha  para crear un nuevo repositorio y New repository


El nuevo repositorio le llamaremso OpenWebmavenGood para distinguirlo de otro que ya existe y el botón Create repository


Y ya lo hemos creado, y nos muestra información. Lo mas importante es la URI del repositorio remoto que marcamos en azul que es

https://github.com/ximodante/OpenWebMavenGood.git


3. Mostrar las vistas de Eclipse relacionadas con git

Vamos al menu superior y le damos Window > Show View > Other > Git > Git Repositories


Le damos al botón Open

Abrimos de la misma manera Window-Show View-Other-Team-History


Ahora se puede ver la ventana"Git Repositories" abajo a la izquierda y la ventana de History abajo a la derecha.


4. Clonar un repositorio remoto


Para ello vamos a la ventana Git Repositories y le damos al boton de Clone a Git repository and add the clone to this view  que está en la parte superior central de la ventana


Le damos la URI que nos ha dado al crear el repositorio remoto , junto con las credenciales y Next


Y ahora se queja que el repositorio está vacío y le damos a Next




Le damos damos un nivel mas de anidamiento con la carpeta gitrepos que es hijja de git, tal como indica la figura al botón Finish



Y debe de aparecer el ropositorio remoto en nuesta ventana Git Repositories


5. Asignar nuestro proyecto al repositorio

Para ello le damos con el botón derecho del ratón Team > Share Project


Seleccionamos el repositorio que hemos creado y Finish.


Y ya tenemos nuestro proyecto vinculado a un github remoto pero nuestro proyecto lo ha TRASLADADO desde su ubicación original a la que aparece en la pantalla.

 /home/eduard/git/gitrepos/OpenWebMavenGood/OpenWebMaven.


4. Hacer commits del repositorio local

Con el botón derecho del raton sobre nuestro proyecto hacemos Team > Commit


Y  en la ventana Git Staging aparecen un monton de archivos en la subventana Unstaged Changes a la cual hay que pasar a la subentana de Staged mediante el botón "++"
Y tras darle al  se van a Staged Changes



Si le damos al botón Commit and Push y le damos un Commit
Modificamos una clase (ContextAction.java y le añadimos un pequeño comentario mostrado en ña ventana Commit message (001 Primera actualización 29/3/2018)



Y le damos al botón Commit and Push co ello conseguimos:

  1. Hacer un commit en en repositorio local /home/eduard/git/gitrepos/OpenWebMavenGood
  2. Exportar cambios al remoto https:/github.con/ximodante/OpenWebMavenGood.git


Y nos pide que confirmemos:


Y ahora nos dice que ha terminado:


Si ahora nos vamos al repositorio remoto de github podemos comprobar que se han guardados los cambios del commit con mensaje 001 Primera actualización 29/3/2018

Abrimos el navegador con la dirección del repositorio:


Y si entramos dentro vemos que está la misma estructura del proyecto





martes, 13 de marzo de 2018

GitHub (1): Uso de comandos en línea

1. Introducción

Si se quiere trabajar con Eclipse en equipo o si se tienen diferentes máquinas para trabajar en un mismo proyecto es conveniente tener un repositorio. En nuestro caso elegimos Github

Es de mucha ayuda este enlace de Stackoverflow. Y tambien Roger Dudler.






2. Instalar github

Para ello vamos a https://git-scm.com/ y le damos a Dowloads


Y en nuestro caso seleccionamos Linux/Unix

Y entre otras aparecen las instrucciones para Ubuntu


Ejecutamos lo que nos dicen


sudo add-apt-repository ppa:git-core/ppa 
sudo apt update
sudo apt install git


3. Crear una cuenta y repositorio remoto en Github


Vamos a https://github.com/ y creamos una cuenta, donde le damos nuestro nombre, email y contraseña




En mi caso el usuario es ximodante y el repositorio es OpenWebMaven

No crear los ficheros LICENSE ni README.md ahora, si no tendremos problemas de  sincronización.


También sale un recordatorio de comandos a usar



4. Inicializar un repositorio local git

Vamos a la carpeta donde está nuestro proyecto y en una ventana de sistema ejecutamos


git init

Y nos crea en dicho directorio una carpeta llamada .git


5. Registrar el repositorio local con un repositorio remoto

Así se puede guardar y extraer la información de/desde el repositorio remoto. Para ello se utiliza la sentencia general git remote add origin https://github.com/[username]/[reponame].git que quedaria para mi caso:


git remote add origin https://github.com/ximodante/OpenWebMaven.git


6. Llenar por primera vez el repositorio local

Como tanto el repositorio local como el remoto están vacíos, vamos a llenar primeramente el repositorio local. Para ello comprobar que en la ventana de comandos estamos en la carpeta de nuestro proyecto y para hacer un commit (carga) en nuestro repositorio local. Ejecutamos:


git commit -a -m "Initial commit"

7. Trasladar el contenido desde el repositorio local al remoto

Una vez lleno el local, lo copiamos al remoto así:


git push -u origin master

Y nos va a pedir el usuario y la contraseña.

Si por el contrario queremos copiar el contenido del repositorio remoto en el local (proceso inverso) ya que queremos tener una copia en otro ordenador.


8. Resumen (de Roger Dudler)

La forma de trabajar es la siguiente:

A. Repositorio local: que consta de 3 árboles:

  1. Directorio de trabajo: Que contiene los archivos.
  2. Index: que actua de zona intermedia.
  3. Head: que apunta al último commit realizado


B. Add & commit
  1. Añadir un fichero al index: git add <filename>
  2. Añadir todos los ficheros del directorio al index: git add . 
  3. Hacer commit a los cambios: git commit -m "Commit message" 
  4. Ahora hemos guardados los archivos en el HEAD, pero NO está en el repositorio remoto.


C. Envío de cambios
  1. Enviar cambios desde el HEAD al repositorio remoto, donde master es un nombre de rama que podemos cambiar el nombre: git push origin master   
  2. Si nuestro repositorio no ha sido clonado (desde un repositorio remoto) y queremos conectarlo a ese repositorio remoto: git remote add origin <server>    . A partir de ahora se podrán subir los cambios al repositorio remoto escogido.

C. Ramas

  1. La rama master es la rama por defecto cuando se crea un repositorio.
  2. Se crean ramas durante el desarrollo y se fusionan con la principal cuando termines.
  3. En el dibujo se crea una nieva rama llamada "feature_x". Para cambiarse a esta rama indicamos: git checkout -b feature_x 
  4. Si queremos volver a la rama principal: git checkout master
  5. Y si ahora queremo borrar la rama : git branch -d feature_x  
  6. Si por el contrario se quiere subir la nueva rama al repositorio remoto (mientras no la hayamos borrado!!) : git push origin feature_x  


D. Actualizar y fusionar:
  1. Para recoger todos los cambios del repositorio remoto al local: git pull . Con este comando  hemos bajado y fusionado los datos remotos
  2. Para fusionar otra rama a tu rama activa: git merge <branch> 
  3. En los 2 casos anteriores git intentará fusionar automáticamente los cambios. Pero seguramente aparecerán CONFLICTOS.
E. Resolución de conflictos de versionado:
  1. Se tienen que resolver manualmente.
  2. Se modificarán manualmente los ficheros conflictivos.
  3. Se añadirán al git: git add <filename>  
  4. Antes de fusionar los cambios (con merge) se observarán las diferencias entre las dos ramas: git diff <source_branch> <target_branch> 
F. Etiquetas: Es una manera de nombrar las versiones (stackoverflow)
  1. Si quiere crear una etiqueta: git tag v1.0.0
  2. Para que el repositorio remoto se entere de esta etiqueta: git push origin v1.0.0
  3. Si queremos que se envien todas las etiquetas: git push --tags   
G. Reemplazar los cambios locales:
  1. A veces cometemos errores y queremos reemplazar los cambios de un fichero de nuestro directorio de trabajo con lo que hay en el HEAD ( el HEAD es en el repositorio local). Para ello hacemos: git checkout -- <filename> 
  2. En cambio los cambios agregados al Index así como los nuevos arechivos, se mantendrán sin cambios con el comando anterior.
  3. Si queremos deshacer todos los cambios locales y commits, tenemos que descargar la última versión que hay en el servidor remoto: git fetch origin y para apuntar a la copia local principal git reset --hard origin/master 
  HOtros:
  1. Hau un interface gráfico que se ejecuta (si no está instalado se ejecuta sudo apt install gitk) que es gitk 
  2. Para añadir archivos de forma interactiva: git add -i 

lunes, 12 de marzo de 2018

Alfresco (2): Introducción(2). Dashboard, Perfil

1. Personalizar el Dashboard.


Podemos realizar las siguientes acciones:

  • Ocultar  la INTRODUCCIÓN (boton Ocultar)

  • Botón de personalizar para definir los dashlets y su disposición.

Se puede cambiar la disposición (layout)

Y añadir dashlets 







Pudiendo quedar :










2. Perfil


Se puede acceder con el boton de mi usuario (Administador) y cambiar el perfil, indicándole nombre, correo electronico, skype, foto ...




3. Página inicial.


Si vamos a cualquier página y seleccionamos en el menu usar página actual, ya está