Uso básico de github » Histórico » Versión 4
Moreno León, Jesús, 08-06-2012 07:35
1 | 1 | Molina Coballes, Alberto | h1. Uso básico de github |
---|---|---|---|
2 | |||
3 | Para desarrollar la documentación de forma colaborativa se va a utilizar el sistema de control de versiones git, en particular se va a utilizar la forja github. Se ha creado en github la cuenta pi-fp-cloud que se encargará de ir creando todos los repositorios a los que se irán uniendo todos los participantes como colaboradoes. |
||
4 | |||
5 | h2. Crea una cuenta en github |
||
6 | |||
7 | * Entra en github.com y crea una cuenta nueva |
||
8 | 4 | Moreno León, Jesús | * Configura las claves ssh siguiendo las instrucciones. (En algunas versiones de Ubuntu, tras la configuración de las claves puedes obtener el error _Permission denied (publickey)_ durante la conexión. Tienes información de cómo resolverlo en [1]). |
9 | 1 | Molina Coballes, Alberto | * Solicita en el foro que te añadan como colaborador a los repositorios de pi-fp-cloud |
10 | |||
11 | h2. Usando el repositorio por primera vez |
||
12 | |||
13 | * Abre una terminal |
||
14 | * Instala el paquete git |
||
15 | * Configura sesión de git: |
||
16 | <pre> |
||
17 | git config --global user.name "<pon aquí tu nombre>" |
||
18 | git config --global user.email <pon aquí tu email> |
||
19 | </pre> |
||
20 | * Ubícate en el directorio donde quieras que se clonen los repositorios (supongamos ~/github): |
||
21 | <pre> |
||
22 | mkdir ~/github |
||
23 | cd ~/github |
||
24 | </pre> |
||
25 | * Clonamos un repositorio (por ejemplo el de infraestructura): |
||
26 | <pre> |
||
27 | git clone git@github.com:pi-fp-cloud/infraestructura.git |
||
28 | </pre> |
||
29 | Tendrás en local el directorio infraestructura con la última versión de todos los ficheros. |
||
30 | |||
31 | h2. Haciendo modificaciones y subiéndolas a github |
||
32 | |||
33 | * Podemos hacer modificaciones sobre los ficheros existentes o crear ficheros nuevos que queramos añadir al repositorio. Por ejemplo, supongamos que hacemos alguna modificación sobre el fichero servidores.xml, si preguntamos a git sobre el estado actual, nos responderá: |
||
34 | <pre> |
||
35 | $ git status |
||
36 | 2 | Molina Coballes, Alberto | </pre> |
37 | <pre> |
||
38 | 1 | Molina Coballes, Alberto | # On branch master |
39 | # Changed but not updated: |
||
40 | # (use "git add <file>..." to update what will be committed) |
||
41 | # (use "git checkout -- <file>..." to discard changes in working directory) |
||
42 | # |
||
43 | # modified: src/servidores.xml |
||
44 | # |
||
45 | no changes added to commit (use "git add" and/or "git commit -a") |
||
46 | </pre> |
||
47 | Es decir que ha cambiado el fichero src/servidores.xml, pero no se ha consignado (no se ha marcado para actualizar en el repositorio), si realmente queremos incluir las modificaciones en el repositorio, hacemos: |
||
48 | <pre> |
||
49 | git add src/servidores.xml |
||
50 | </pre> |
||
51 | Si volvemos a preguntar por el estado de git: |
||
52 | <pre> |
||
53 | $ git status |
||
54 | 2 | Molina Coballes, Alberto | </pre> |
55 | 3 | Molina Coballes, Alberto | <pre> |
56 | 1 | Molina Coballes, Alberto | # On branch master |
57 | # Changes to be committed: |
||
58 | # (use "git reset HEAD <file>..." to unstage) |
||
59 | # |
||
60 | # modified: src/servidores.xml |
||
61 | # |
||
62 | </pre> |
||
63 | Vamos a actualizar el repositorio (en git hay que hacerlo en dos pasos a diferencia de otros sistemas de control de versiones): |
||
64 | <pre> |
||
65 | 2 | Molina Coballes, Alberto | git commit -m "Comentario sobre el fichero modificado" |
66 | git push |
||
67 | 1 | Molina Coballes, Alberto | </pre> |
68 | |||
69 | h2. Abriendo una sesión sobre un repositorio existente |
||
70 | |||
71 | El clonado del repositorio sólo se suele hacer la primera vez, las demás simplemente se accede al directorio donde se encuentra la copia local y se actualiza: |
||
72 | |||
73 | * Abrimos una terminal |
||
74 | * Configura sesión de git (se puede añadir al fichero de configuración de la shell (~/.bashrc por ejemplo)): |
||
75 | <pre> |
||
76 | git config --global user.name "<pon aquí tu nombre>" |
||
77 | git config --global user.email <pon aquí tu email> |
||
78 | </pre> |
||
79 | * Accede al directorio con la copia local del repositorio (con el mismo ejemplo de antes): |
||
80 | <pre> |
||
81 | 2 | Molina Coballes, Alberto | cd ~/github/infraestructura |
82 | 1 | Molina Coballes, Alberto | </pre> |
83 | Actualiza el repositorio local: |
||
84 | <pre> |
||
85 | git pull |
||
86 | </pre> |
||
87 | 4 | Moreno León, Jesús | |
88 | [1] https://bugs.launchpad.net/ubuntu/+source/gnome-keyring/+bug/201786 |