forked from esparta/gitimmersion-spanish
-
Notifications
You must be signed in to change notification settings - Fork 0
/
lab_09.html
198 lines (192 loc) · 12.9 KB
/
lab_09.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
<!DOCTYPE html>
<html>
<head>
<title>Lab 9 - Git Immersion en Español</title>
<meta content="text/html; charset=UTF-8" http-equiv="content-type">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" media="screen" href="css/screen.css">
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXXXX-X']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
<script type="text/javascript" src="javascript/jquery.js"></script>
<script type="text/javascript" src="javascript/jquery.hotkeys.js"></script>
<script type="text/javascript" src="javascript/UI.js"></script>
</head>
<body data-lab-id="9">
<header id="header">
<a href="index.html" id="home_link">Git Immersion en Español</a>
<nav id="pager">
<a id="arrow_next" class="arrow" href="lab_10.html">Siguiente</a>
<a id="arrow_previous" class="arrow" href="lab_08.html">Anterior</a>
<a id="table_of_contents_link" href="#">Tabla de Contenidos</a>
<a id="bookmark_link"><span id="bookmark"></span>Añadir a favoritos</a>
<a id="edgecase_link" href="http://edgecase.com" target="_blank">EdgeCase</a>
</nav>
<h1 class="lab_title"><em>lab 9</em> Cambios, no archivos</h1>
<a href="http://edgecase.com" target="_blank" id="other_edgecase_link">EdgeCase</a>
</header>
<div id="main_content">
<h1 class="lab_title"><em>lab 9</em> Cambios, no archivos</h1>
<h3>Metas</h3>
<ul>
<li>Aprender que git trabaja con cambios, no con archivos.</li>
</ul>
<p>Muchos sistemas de control de versiones trabajan con archivos. Se agrega un archivo al control de versiones y el sistema rastreará los cambios al archivo al que apunta.</p>
<p>Git se enfoca en los cambios al archivo en vez del archivo mismo. Cuando escribe <code>git add file</code>, no le está diciendo a git que agregue el archivo al repositorio. En vez de eso, se le dice a git que debería notar el estado actual de ese archivo al que se le hará un Commit después.</p>
<p>Intentaremos explorar esta diferencia en este laboratorio.</p>
<h2>Primer cambio: Permitir un nombre por defecto <em>01</em></h2>
<p>Cambie el programa “Hola, Mundo” para tener un valor por defecto si no se proporciona el argumento en la línea de comando.</p>
<h4>Archivo: <em>hello.rb</em></h4>
<pre class="file">name = ARGV.first || "World"
puts "Hello, #{name}!"
</pre>
<h2>Agregue este cambio <em>02</em></h2>
<p>Ahora agregue este cambio al área de Staging de git.</p>
<h4>Ejecute:</h4>
<pre class="instructions">git add hello.rb</pre>
<h2>Segundo cambio: Agregue un comentario <em>03</em></h2>
<p>Ahora agregue un comentario al programa “Hola, Mundo”.</p>
<h4>Archivo: <em>hello.rb</em></h4>
<pre class="file"># Default is "World"
name = ARGV.first || "World"
puts "Hello, #{name}!"
</pre>
<h2>Revise el estatus actual <em>04</em></h2>
<h4>Ejecute:</h4>
<pre class="instructions">git status</pre>
<p>Deberá ver …</p>
<h4>Salida:</h4>
<pre class="sample">$ git status
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: hello.rb
#
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: hello.rb
#
</pre>
<p>Observe cómo se lista <code>hello.rb</code> dos veces en el estatus. El primer cambio (agregando un valor por defecto) está en Stage y listo para el Commit. El segundo cambio (agregando un comentario) no está en Stage. Si realizara el Commit ahora mismo, el comentario no será almacenado en el repositorio.</p>
<p>Intentemos eso.</p>
<h2>Realizando Committ <em>05</em></h2>
<p>Confirme el cambio en el área de Stage (el valor por defecto),y revise de nuevo es estatus.</p>
<h4>Ejecute:</h4>
<pre class="instructions">git commit -m "Added a default value"
git status</pre>
<p>Debería ver …</p>
<h4>Salida:</h4>
<pre class="sample">$ git commit -m "Added a default value"
[master 1b754e9] Added a default value
1 files changed, 3 insertions(+), 1 deletions(-)
$ git status
# On branch master
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: hello.rb
#
no changes added to commit (use "git add" and/or "git commit -a")
</pre>
<p>El comando estatus nos dice que <code>hello.rb</code> tiene cambios no guardados, pero ya no está en el área de Staging.</p>
<h2>Agregue el segundo cambio <em>06</em></h2>
<p>Ahora agregue el segundo cambio al área de Staging, después ejecute git status.</p>
<h4>Ejecute:</h4>
<pre class="instructions">git add .
git status</pre>
<p class="note"><strong>Nota:</strong> Usamos el directorio actual (‘.’) como el archivo a agregar. Esto es un atajo realmente conveniente para agregar todos los cambios en los archivos en el directorio actual. Pero como esto agrega todo, es una <em>realmente</em> buena idea revisar el estatus antes de realizar un <tt>"add ."</tt>, sólo para asegurarse de no agregar archivos que no tenía intenciones de agregar.</p>
<p class="note">Deseaba repasar el truco de “add .” , pero continuaré agregando archivos explícitamente en el resto del tutorial sólo para estar seguros.</p>
<p>Deberá ver …</p>
<h4>Salida:</h4>
<pre class="sample">$ git status
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: hello.rb
#
</pre>
<p>Ahora el segundo cambio está en el Stage y listo para el Commit.</p>
<h2>Commit del segundo cambio <em>07</em></h2>
<h4>Ejecute:</h4>
<pre class="instructions">git commit -m "Added a comment"</pre>
</div>
<div id="index">
<h1>Tabla de Contenidos</h1>
<div id="show_bookmarks"></div>
<div id="no_bookmarks"></div>
<ul>
<li id="lab_0_link"><a href="index.html"><span> </span>Portada</a></li>
<li id="lab_1_link" data-lab-id="1"><a href="lab_01.html"><span>1:</span> Configuración</a></li>
<li id="lab_2_link" data-lab-id="2"><a href="lab_02.html"><span>2:</span> Más configuración</a></li>
<li id="lab_3_link" data-lab-id="3"><a href="lab_03.html"><span>3:</span> Crear un Proyecto</a></li>
<li id="lab_4_link" data-lab-id="4"><a href="lab_04.html"><span>4:</span> Revisar Estatus</a></li>
<li id="lab_5_link" data-lab-id="5"><a href="lab_05.html"><span>5:</span> Realizar Cambios</a></li>
<li id="lab_6_link" data-lab-id="6"><a href="lab_06.html"><span>6:</span> Hacer Staging a cambios</a></li>
<li id="lab_7_link" data-lab-id="7"><a href="lab_07.html"><span>7:</span> Staging y Commit</a></li>
<li id="lab_8_link" data-lab-id="8"><a href="lab_08.html"><span>8:</span> Hacer Commit a los cambios</a></li>
<li id="lab_9_link" data-lab-id="9"><a href="lab_09.html"><span>9:</span> Cambios, no archivos</a></li>
<li id="lab_10_link" data-lab-id="10"><a href="lab_10.html"><span>10:</span> Historial</a></li>
<li id="lab_11_link" data-lab-id="11"><a href="lab_11.html"><span>11:</span> Alias</a></li>
<li id="lab_12_link" data-lab-id="12"><a href="lab_12.html"><span>12:</span> Obteniendo Versiones Antiguas</a></li>
<li id="lab_13_link" data-lab-id="13"><a href="lab_13.html"><span>13:</span> Etiquetar (Tagging) versiones</a></li>
<li id="lab_14_link" data-lab-id="14"><a href="lab_14.html"><span>14:</span> Deshacer Cambios Locales (antes de staging)</a></li>
<li id="lab_15_link" data-lab-id="15"><a href="lab_15.html"><span>15:</span> Deshacer Cambios en Stage (antes de commit)</a></li>
<li id="lab_16_link" data-lab-id="16"><a href="lab_16.html"><span>16:</span> Deshacer Cambios Confirmados (Committed)</a></li>
<li id="lab_17_link" data-lab-id="17"><a href="lab_17.html"><span>17:</span> Quitando Commits de una Ramificación (Branch)</a></li>
<li id="lab_18_link" data-lab-id="18"><a href="lab_18.html"><span>18:</span> Quitando la etiqueta "oops"</a></li>
<li id="lab_19_link" data-lab-id="19"><a href="lab_19.html"><span>19:</span> Enmendar Commits (--amend)</a></li>
<li id="lab_20_link" data-lab-id="20"><a href="lab_20.html"><span>20:</span> Moviendo Archivos</a></li>
<li id="lab_21_link" data-lab-id="21"><a href="lab_21.html"><span>21:</span> Más Estructura</a></li>
<li id="lab_22_link" data-lab-id="22"><a href="lab_22.html"><span>22:</span> Al Interior de Git: El directorio .git</a></li>
<li id="lab_23_link" data-lab-id="23"><a href="lab_23.html"><span>23:</span> Al Interior de Git: Directorio de trabajo con Objetos de Git</a></li>
<li id="lab_24_link" data-lab-id="24"><a href="lab_24.html"><span>24:</span> Creando una Ramificación (Branch)</a></li>
<li id="lab_25_link" data-lab-id="25"><a href="lab_25.html"><span>25:</span> Navegando Ramificaciones</a></li>
<li id="lab_26_link" data-lab-id="26"><a href="lab_26.html"><span>26:</span> Cambios en Master</a></li>
<li id="lab_27_link" data-lab-id="27"><a href="lab_27.html"><span>27:</span> Viendo las ramificaciones divergentes</a></li>
<li id="lab_28_link" data-lab-id="28"><a href="lab_28.html"><span>28:</span> Fusionando (Merge)</a></li>
<li id="lab_29_link" data-lab-id="29"><a href="lab_29.html"><span>29:</span> Creando un Conflicto</a></li>
<li id="lab_30_link" data-lab-id="30"><a href="lab_30.html"><span>30:</span> Resolviendo Conflictos</a></li>
<li id="lab_31_link" data-lab-id="31"><a href="lab_31.html"><span>31:</span> Cambio de Base (Rebasing) VS Fusión (Merging)</a></li>
<li id="lab_32_link" data-lab-id="32"><a href="lab_32.html"><span>32:</span> Restableciendo la Ramificación Greet</a></li>
<li id="lab_33_link" data-lab-id="33"><a href="lab_33.html"><span>33:</span> Reestableciendo la Ramificación Master</a></li>
<li id="lab_34_link" data-lab-id="34"><a href="lab_34.html"><span>34:</span> Cambio de Base (Rebasing)</a></li>
<li id="lab_35_link" data-lab-id="35"><a href="lab_35.html"><span>35:</span> Volver a Fusionar a la Ramificación Principal</a></li>
<li id="lab_36_link" data-lab-id="36"><a href="lab_36.html"><span>36:</span> Múltiples Repositorios</a></li>
<li id="lab_37_link" data-lab-id="37"><a href="lab_37.html"><span>37:</span> Clonando Repositorios</a></li>
<li id="lab_38_link" data-lab-id="38"><a href="lab_38.html"><span>38:</span> Revisión del Repositorio Clonado</a></li>
<li id="lab_39_link" data-lab-id="39"><a href="lab_39.html"><span>39:</span> ¿Qué es "Origin"?</a></li>
<li id="lab_40_link" data-lab-id="40"><a href="lab_40.html"><span>40:</span> Ramificaciones Remotas</a></li>
<li id="lab_41_link" data-lab-id="41"><a href="lab_41.html"><span>41:</span> Cambiar el Repositorio Original</a></li>
<li id="lab_42_link" data-lab-id="42"><a href="lab_42.html"><span>42:</span> Entregar Cambios (Fetch)</a></li>
<li id="lab_43_link" data-lab-id="43"><a href="lab_43.html"><span>43:</span> Fusionar Cambios Recibidos</a></li>
<li id="lab_44_link" data-lab-id="44"><a href="lab_44.html"><span>44:</span> Recibiendo cambios remotos (comando Pull)</a></li>
<li id="lab_45_link" data-lab-id="45"><a href="lab_45.html"><span>45:</span> Agregando un rastreo de Ramificación</a></li>
<li id="lab_46_link" data-lab-id="46"><a href="lab_46.html"><span>46:</span> Repositorios Escuetos (--bare)</a></li>
<li id="lab_47_link" data-lab-id="47"><a href="lab_47.html"><span>47:</span> Agregando un Repositorio Remoto</a></li>
<li id="lab_48_link" data-lab-id="48"><a href="lab_48.html"><span>48:</span> Enviando Cambios</a></li>
<li id="lab_49_link" data-lab-id="49"><a href="lab_49.html"><span>49:</span> Recibiendo Cambios Compartidos</a></li>
<li id="lab_50_link" data-lab-id="50"><a href="lab_50.html"><span>50:</span> Hospedando sus repositorios Git</a></li>
<li id="lab_51_link" data-lab-id="51"><a href="lab_51.html"><span>51:</span> Compartiendo Repositorios</a></li>
<li id="lab_52_link" data-lab-id="52"><a href="lab_52.html"><span>52:</span> Tópicos Avanzados / Futuros</a></li>
<li id="lab_53_link" data-lab-id="53"><a href="lab_53.html"><span>53:</span> Gracias</a></li>
</ul>
</div>
<div id="cover"></div>
</body>
</html>