diff --git a/src/levels/advanced/multipleParents.js b/src/levels/advanced/multipleParents.js index 7b40b4dc..dd822ad0 100644 --- a/src/levels/advanced/multipleParents.js +++ b/src/levels/advanced/multipleParents.js @@ -9,6 +9,7 @@ exports.level = { "de_DE": "Mehrere Vorgänger", "ja" : "複数の親", "es_AR": "Múltiples padres", + "es_ES": "Múltiples padres", "pt_BR": "Múltiplos pais", "gl" : "Múltiples pais", "zh_TW": "多個 parent commit", @@ -23,6 +24,7 @@ exports.level = { 'fr_FR': 'Utilisez "git branch bugWork" avec un commit pour créer une référence manquante', "zh_CN": "使用 `git branch bugWork` 加上一个目标提交记录来创建消失的引用。", "es_AR": "Usá `git branch bugWork` sobre algún commit para crear la referencia faltante", + "es_ES": "Usa `git branch bugWork` sobre algún commit para crear la referencia que falta", "pt_BR": "Use `git branch bugWork` com um commit alvo para criar a referência que falta", "gl" : "Usa `git branch bugWork` sobre calquera commit para crear a referencia que falta", "zh_TW": "在一個指定的 commit 上面使用 `git branch bugWork`。", @@ -466,6 +468,93 @@ exports.level = { } ] }, + "es_ES": { + "childViews": [ + { + "type": "ModalAlert", + "options": { + "markdowns": [ + "### Especificando los padres", + "", + "Como el modificador de `~`, `^` también acepta un número opcional después de él.", + "", + "En lugar de especificar cuántas generaciones hacia atrás ir (como `~`), el modificador de `^` especifica por cuál de las referencias padres seguir en un commit de merge. Recuerda que un commit de merge tiene múltiples padres, por lo que el camino a seguir es ambiguo.", + "", + "Git normalmente sigue el \"primer\" padre de un commit de merge, pero especificando un número junto con `^` cambia este comportamiento predefinido.", + "", + "Demasiada charla, veámoslo en acción.", + "" + ] + } + }, + { + "type": "GitDemonstrationView", + "options": { + "beforeMarkdowns": [ + "Aquí tenemos un commit de merge. Si hacemos checkout de `master^`, sin modificadores, vamos a seguir al primer padre después del commit de merge. ", + "", + "(*En nuestras visualizaciones, el primer padre se ubica directamente arriba del commit de merge.*)" + ], + "afterMarkdowns": [ + "Fácil -- esto es a lo que estamos acostumbrados." + ], + "command": "git checkout master^", + "beforeCommand": "git checkout HEAD^; git commit; git checkout master; git merge C2" + } + }, + { + "type": "GitDemonstrationView", + "options": { + "beforeMarkdowns": [ + "Ahora tratemos de especificar el segundo padre, en cambio..." + ], + "afterMarkdowns": [ + "¿Ves? Seguimos al otro padre hacia arriba." + ], + "command": "git checkout master^2", + "beforeCommand": "git checkout HEAD^; git commit; git checkout master; git merge C2" + } + }, + { + "type": "GitDemonstrationView", + "options": { + "beforeMarkdowns": [ + "Los modificadores de `^` y `~` son muy poderosos a la hora de movernos en un árbol:" + ], + "afterMarkdowns": [ + "¡Rapidísimo!" + ], + "command": "git checkout HEAD~; git checkout HEAD^2; git checkout HEAD~2", + "beforeCommand": "git commit; git checkout C0; git commit; git commit; git commit; git checkout master; git merge C5; git commit" + } + }, + { + "type": "GitDemonstrationView", + "options": { + "beforeMarkdowns": [ + "Más loco aún, ¡estos modificadores pueden encadenarse entre sí! Mira esto:" + ], + "afterMarkdowns": [ + "El mismo movimiento que antes, pero todo en uno." + ], + "command": "git checkout HEAD~^2~2", + "beforeCommand": "git commit; git checkout C0; git commit; git commit; git commit; git checkout master; git merge C5; git commit" + } + }, + { + "type": "ModalAlert", + "options": { + "markdowns": [ + "### Ponlo en práctica", + "", + "Para completar este nivel, crea una nueva rama en la ubicación indicada.", + "", + "Obviamente sería muy fácil especificar el commit directamente (algo como `C6`), pero te reto a usar los modificadores de los que estuvimos hablando, mejor" + ] + } + } + ] + }, "pt_BR": { "childViews": [ {