You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: book/07-git-tools/sections/reset.asc
+4-6
Original file line number
Diff line number
Diff line change
@@ -297,15 +297,13 @@ Además, al igual que `git reset` y `git add`, `checkout` aceptará una opción
297
297
Esperamos que ahora entiendas y te sientas más cómodo con el comando `reset`, pero probablemente todavía estés un poco confundido acerca de cómo exactamente difiere de `checkout` y posiblemente no puedas recordar todas las reglas de las diferentes invocaciones.
298
298
299
299
Aquí hay una hoja de trucos para cuáles comandos afectan a cuáles árboles.
300
-
La columna ``HEAD'' lee ``REF'' si ese comando mueve la referencia (rama) a la que *HEAD* apunta, y ``HEAD'' si se mueve al mismo *HEAD*.
301
-
**<<[begin:] No encuentro el sentido de esta orción**
302
-
Esta función calculará la ciudad y el país del visitante desde la dirección IP. Para activar esta función, debes descargar la base de datos GeoIP y configurar la clave de la API de Google. Por favor, vea "Más información"
303
-
**[:endig]>>**
300
+
La columna ``HEAD'' dice ``REF'' si ese comando mueve la referencia (rama) a la que *HEAD* apunta, y ``HEAD'' si se mueve al propio *HEAD*.
301
+
Presta especial atención a la columna **WD Safe**: si dice **NO** , tómate un segundo para pensar antes de ejecutar ese comando.
Copy file name to clipboardExpand all lines: book/07-git-tools/sections/searching.asc
+13-13
Original file line number
Diff line number
Diff line change
@@ -2,15 +2,15 @@
2
2
3
3
=== Buscando
4
4
5
-
Con casi cualquier tamaño de código de base, a menudo necesitará encontrar en dónde se llama o define una función, o encontrar el historial de un método. Git proporciona un par de herramientas útiles para examinar el código y hacer commit a las almacenadas en su base de datos de forma rápida y fácil. Vamos a revisar algunos de ellos.
5
+
Con casi cualquier tamaño de código de base, a menudo necesitará encontrar en dónde se llama o define una función, o encontrar el historial de un método. Git proporciona un par de herramientas útiles para examinar el código y hacer 'commit' a las instantáneas almacenadas en su base de datos de forma rápida y fácil. Vamos a revisar algunas de ellas.
6
6
7
7
[[r_git_grep]]
8
8
==== Git Grep
9
9
10
10
11
-
Git se envía con un comando llamado `grep` que le permite buscar fácilmente a través de cualquier árbol o directorio de trabajo con commit por una cadena o expresión regular. Para estos ejemplos, veremos el código fuente de Git.
11
+
Git se envía con un comando llamado `grep` que le permite buscar fácilmente a través de cualquier árbol o directorio de trabajo con 'commit' por una cadena o expresión regular. Para estos ejemplos, veremos el código fuente de Git.
12
12
13
-
Por defecto, mirará a través de los archivos en su directorio de trabajo. Puede pasar `-n` para imprimir los números de línea donde Git ha encontrado coincidencias.
13
+
Por defecto, mirará a través de los archivos en su directorio de trabajo. Puedes pasar `-n` para imprimir los números de línea donde Git ha encontrado coincidencias.
Hay una serie de opciones interesantes que puede proporcionar el comando `grep`.
31
31
32
-
Por ejemplo, en lugar de la llamada anterior, puede hacer que Git resuma el resultado simplemente mostrándole qué archivos coinciden y cuántas coincidencias hay en cada archivo con la opción `--count`:
32
+
Por ejemplo, en lugar de la llamada anterior, puedes hacer que Git resuma el resultado simplemente mostrándote qué archivos coinciden y cuántas coincidencias hay en cada archivo con la opción `--count`:
33
33
34
34
[source,console]
35
35
----
@@ -41,7 +41,7 @@ date.c:2
41
41
git-compat-util.h:2
42
42
----
43
43
44
-
Si quiere ver qué método o función piensa que ha encontrado una coincidencia, puede pasar `-p`:
44
+
Si quieres ver en qué método o función piensa Git que ha encontrado una coincidencia, puedes pasar `-p`:
45
45
46
46
[source,console]
47
47
----
@@ -54,7 +54,7 @@ date.c: if (gmtime_r(&time, tm)) {
54
54
55
55
Así que aquí podemos ver que se llama a `gmtime_r` en las funciones `match_multi_number` y `match_digit` en el archivo date.c.
56
56
57
-
También puede buscar combinaciones complejas de cadenas con el indicador `--and`, que asegura que múltiples coincidencias estén en la misma línea. Por ejemplo, busquemos cualquier línea que defina una constante con las cadenas ``LINK'' o ``BUF_MAX'' en ellas en la base del código de Git en una versión 1.8.0 anterior.
57
+
También puedes buscar combinaciones complejas de cadenas con el indicador `--and`, que asegura que múltiples coincidencias estén en la misma línea. Por ejemplo, busquemos cualquier línea que defina una constante con las cadenas ``LINK'' o ``BUF_MAX'' en ellas en la base del código de Git en una versión 1.8.0 anterior.
58
58
59
59
Aquí también usaremos las opciones `--break` y `--heading` que ayudan a dividir el resultado en un formato más legible.
60
60
@@ -87,9 +87,9 @@ El comando `git grep` tiene algunas ventajas sobre los comandos de búsqueda nor
87
87
88
88
==== Búsqueda de Registro de Git
89
89
90
-
Quizás no está buscando **dónde** existe un término, sino **cuando** existió o se introdujo. El comando `git log` tiene varias herramientas potentes para encontrar commits específicas por el contenido de sus mensajes o incluso el contenido de las diferencias que introducen.
90
+
Quizás no estás buscando **dónde** existe un término, sino **cuándo** existió o se introdujo. El comando `git log` tiene varias herramientas potentes para encontrar 'commits' específicos por el contenido de sus mensajes o incluso el contenido de las diferencias que introducen.
91
91
92
-
Si queremos saber, por ejemplo, cuándo se introdujo originalmente la constante `ZLIB_BUF_MAX`, podemos decirle ac Git que solo nos muestre los commits que agregaron o eliminaron esa cadena con la opción `-S`.
92
+
Si queremos saber, por ejemplo, cuándo se introdujo originalmente la constante `ZLIB_BUF_MAX`, podemos decirle a Git que sólo nos muestre los 'commits' que agregaron o eliminaron esa cadena con la opción `-S`.
93
93
94
94
[source,console]
95
95
----
@@ -98,15 +98,15 @@ e01503b zlib: allow feeding more than 4GB in one go
98
98
ef49a7a zlib: zlib can only process 4GB at a time
99
99
----
100
100
101
-
Si miramos la diferencia de esos commits, podemos ver que en `ef49a7a` se introdujo la constante y en `e01503b` se modificó.
101
+
Si miramos la diferencia de esos 'commits', podemos ver que en `ef49a7a` se introdujo la constante y en `e01503b` se modificó.
102
102
103
-
Si necesita ser más específico, puede proporcionar una expresión regular para buscar con la opción `-G`.
103
+
Si necesitas ser más específico, puedes proporcionar una expresión regular para buscar con la opción `-G`.
104
104
105
105
===== Búsqueda de Registro de Línea
106
106
107
-
Otra búsqueda de registro bastante avanzada que es increíblemente útil es la búsqueda del historial de línea. Esta es una adición bastante reciente y no muy conocida, pero puede ser realmente útil. Se llama con la opción `-L` a `git log` y le mostrará el historial de una función o línea de código en su base de código.
107
+
Otra búsqueda de registro bastante avanzada que es increíblemente útil es la búsqueda del historial de línea. Esta es una adición bastante reciente y no muy conocida, pero puede ser realmente útil. Se llama con la opción `-L` a `git log` y te mostrará el historial de una función o línea de código en tu base de código.
108
108
109
-
Por ejemplo, si quisiéramos ver cada cambio realizado en la función `git_deflate_bound` en el archivo `zlib.c`, podríamos ejecutar `git log -L :git_deflate_bound:zlib.c`. Esto intentará descubrir cuáles son los límites de esa función y luego examinará el historial y nos mostrará cada cambio que se hizo a la función como una serie de parches de nuevo cuando se creó la función por primera vez.
109
+
Por ejemplo, si quisiéramos ver cada cambio realizado en la función `git_deflate_bound` en el archivo `zlib.c`, podríamos ejecutar `git log -L :git_deflate_bound:zlib.c`. Esto intentará descubrir cuáles son los límites de esa función y luego examinará el historial y nos mostrará cada cambio que se hizo a la función como una serie de parches de cuando se creó la función por primera vez.
110
110
111
111
[source,console]
112
112
----
@@ -146,4 +146,4 @@ diff --git a/zlib.c b/zlib.c
146
146
+
147
147
----
148
148
149
-
Si Git no puede encontrar la forma de relacionar una función o método en su lenguaje de programación, también puede proporcionarle una expresión regular. Por ejemplo, esto habría hecho lo mismo: `git log -L '/unsigned long git_deflate_bound/',/^}/:zlib.c`. También podría darle un rango de líneas o un único número de línea y obtendrá el mismo tipo de salida.
149
+
Si Git no puede encontrar la forma de relacionar una función o método en tu lenguaje de programación, también puedes proporcionarle una expresión regular. Por ejemplo, esto habría hecho lo mismo: `git log -L '/unsigned long git_deflate_bound/',/^}/:zlib.c`. También podrías darle un rango de líneas o un único número de línea y obtendrás el mismo tipo de salida.
Copy file name to clipboardExpand all lines: book/07-git-tools/sections/signing.asc
+12-12
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,7 @@
1
1
[[r_signing]]
2
2
=== Firmando tu trabajo
3
3
4
-
Git es criptográficamente seguro, pero no es a prueba de tontos. Si estás tomando trabajo de otros de internet y quieres verificar que los commits son realmente de fuentes seguras, Git tiene unas cuantas maneras de firmar y verificar utilizando GPG.
4
+
Git es criptográficamente seguro, pero no es a prueba de tontos. Si estás tomando trabajo de otros de Internet y quieres verificar que los 'commits' son realmente de fuentes seguras, Git tiene unas cuantas maneras de firmar y verificar utilizando GPG.
5
5
6
6
==== Introducción a GPG
7
7
@@ -31,11 +31,11 @@ Una vez que tengas una llave privada para firmar, puedes configurar Git para usa
31
31
git config --global user.signingkey 0A46826A
32
32
----
33
33
34
-
Ahora Git usará tu llave por defecto para firmar tags y commits si tu quieres.
34
+
Ahora Git usará tu llave por defecto para firmar 'tags' y 'commits' si tu quieres.
35
35
36
36
==== Firmando Tags
37
37
38
-
Si tienes una llave GPG privada configurada, ahora puedes usarla para firmar tags. Todo lo que tienes que hacer es usar `-s` en lugar de `-a`:
38
+
Si tienes una llave GPG privada configurada, ahora puedes usarla para firmar 'tags'. Todo lo que tienes que hacer es usar `-s` en lugar de `-a`:
Para verificar un tag firmado, usa `git tag -v [nombre-de-tag]`. Este comando usa GPG para verificar la firma. Necesitas tener guardada la llave pública del usuario para que esto funcione de manera apropiada:
80
+
Para verificar un tag firmado, usa `git tag -v [nombre-de-tag]`. Este comando usa GPG para verificar la firma. Necesitas tener guardada la llave pública del usuario para que esto funcione de manera apropiada:
81
81
82
82
[source,console]
83
83
----
@@ -108,7 +108,7 @@ error: could not verify the tag 'v1.4.2.1'
108
108
[[r_signing_commits]]
109
109
==== Firmando Commits
110
110
111
-
En versiones más recientes de Git (v1.7.9 en adelante), ahora puedes firmar commits individuales. Si estás interesado en firmar commits directamente en lugar de solo los tags, todo lo que necesitas hacer es agregar un `-S` a tu comando `git commit`.
111
+
En versiones más recientes de Git (v1.7.9 en adelante), ahora puedes firmar 'commits' individuales. Si estás interesado en firmar 'commits' directamente en lugar de solo los 'tags', todo lo que necesitas hacer es agregar un `-S` a tu comando `git commit`.
112
112
113
113
[source,console]
114
114
----
@@ -150,19 +150,19 @@ ca82a6d N Scott Chacon changed the version number
150
150
a11bef0 N Scott Chacon first commit
151
151
----
152
152
153
-
Aquí podemos ver que solo el último commit es firmado y válido y los commits previos no.
153
+
Aquí podemos ver que sólo el último 'commit' es firmado y válido y los 'commits' previos no.
154
154
155
-
En Git 1.8.3 y posteriores, "git merge" y "git pull" pueden ser configurados para inspeccionar y rechazar cualquier commit que no adjunte una firma GPG de confianza con el comando `--verify-signatures`.
155
+
En Git 1.8.3 y posteriores, "git merge" y "git pull" pueden ser configurados para inspeccionar y rechazar cualquier 'commit' que no adjunte una firma GPG de confianza con el comando `--verify-signatures`.
156
156
157
-
Si se usa esta opción cuando se fusiona una rama y esta contiene commits que no están firmados y son válidos, la fusión no funcionará.
157
+
Si se usa esta opción cuando se fusiona una rama y esta contiene 'commits' que no están firmados, aunque sean válidos, la fusión no funcionará.
158
158
159
159
[source,console]
160
160
----
161
161
$ git merge --verify-signatures non-verify
162
162
fatal: Commit ab06180 does not have a GPG signature.
163
163
----
164
164
165
-
Si una fusión contiene solo commits válidos y firmados, el comando merge mostrará todas las firmas que ha revisado y después procederá con la fusión.
165
+
Si una fusión contiene solo 'commits' válidos y firmados, el comando `merge` mostrará todas las firmas que ha revisado y después procederá con la fusión.
166
166
167
167
[source,console]
168
168
----
@@ -174,7 +174,7 @@ Fast-forward
174
174
1 file changed, 2 insertions(+)
175
175
----
176
176
177
-
También se puede utilizar la opción `-S` junto con el mismo comando `git merge` para firmar el commit resultante. El siguiente ejemplo verifica que cada commit en la rama por ser fusionada esté firmado y también firma el commit resultado de la fusión.
177
+
También se puede utilizar la opción `-S` junto con el mismo comando `git merge` para firmar el 'commit' resultante. El siguiente ejemplo verifica que cada 'commit' en la rama por ser fusionada esté firmado y también firma el 'commit' resultado de la fusión.
178
178
179
179
[source,console]
180
180
----
@@ -192,4 +192,4 @@ Merge made by the 'recursive' strategy.
192
192
193
193
==== Todos deben firmar
194
194
195
-
Firmar tags y commits es grandioso, pero si decides usar esto en tu flujo de trabajo normal, tendrás que asegurar que todos en el equipo entiendan cómo hacerlo. Si no, terminarás gastando mucho tiempo ayudando a las personas a descubrir cómo reescribir sus commits con versiones firmadas. Asegúrate de entender GPG y los beneficios de firmar cosas antes de adoptarlo como parte de tu flujo de trabajo normal.
195
+
Firmar 'tags' y 'commits' es grandioso, pero si decides usar esto en tu flujo de trabajo normal, tendrás que asegurarte que todos en el equipo entiendan cómo hacerlo. Si no, terminarás gastando mucho tiempo ayudando a las personas a descubrir cómo reescribir sus 'commits' con versiones firmadas. Asegúrate de entender GPG y los beneficios de firmar cosas antes de adoptarlo como parte de tu flujo de trabajo normal.
0 commit comments