diff --git a/src/levels/remote/remoteBranches.js b/src/levels/remote/remoteBranches.js index fb19f982..a8a7caf2 100644 --- a/src/levels/remote/remoteBranches.js +++ b/src/levels/remote/remoteBranches.js @@ -7,6 +7,7 @@ exports.level = { "zh_CN": "远程分支", "zh_TW": "remote branch (遠端分支)", "es_AR": "Ramas remotas", + "es_MX": "Ramas remotas", "es_ES": "Ramas remotas", "pt_BR": "Ramos remotos", "gl": "Ramas remotas", @@ -26,6 +27,7 @@ exports.level = { "zh_CN": "注意顺序 —— 先在 main 分支上提交!", "zh_TW": "注意順序的問題喔!先在 main branch 上面送 commit", "es_AR": "Prestá atención al orden: ¡commiteá sobre main primero!", + "es_MX": "Presta atención al orden: ¡haz commit sobre main primero!", "es_ES": "Presta atención al orden: ¡haz commit sobre main primero!", "pt_BR": "Preste atenção na ordem: commite no main primeiro!", "gl": "Preta atención á orde: fai commit no main primeiro", @@ -226,6 +228,69 @@ exports.level = { } ] }, + "es_MX": { + "childViews": [ + { + "type": "ModalAlert", + "options": { + "markdowns": [ + "## Ramas remotas de git", + "", + "Ahora que viste `git clone` en acción, profundicemos en lo que realmente cambió.", + "", + "Lo primero que habrás notado es que apareció una nueva rama en nuestro repositorio local llamada `o/main`. A este tipo de ramas se les llama ramas _remotas_. Las ramas remotas tienen propiedades especiales porque sirven para un propósito específico.", + "", + "Las ramas remotas reflejan el _estado_ de los repositorios remotos (como estaban la última vez que te comunicaste con ellos). Te ayudan a entender las diferencias entre tu trabajo local y el trabajo que ya está publicado (un paso crítico antes de compartir tu trabajo con los demás).", + "", + "Las ramas remotas tienen la propiedad especial de que cuando haces checkout sobre ellas, pasas al modo detached `HEAD`. Git lo hace a propósito porque no puedes trabajar en esas ramas directamente; tienes que trabajar en algún otro lado y después compartir tu trabajo con el remoto (tras lo cual tus ramas remotas serán actualizadas).", + "", + "Para ser claros: Las ramas remotas están en tu repositorio local, no en el repositorio remoto" + ] + } + }, + { + "type": "ModalAlert", + "options": { + "markdowns": [ + "### ¿Qué es `o/`?", + "", + "Podrías estar preguntándote qué significa ese `o/` al principio de las ramas remotas. Bueno, las ramas remotas también tienen una convención de nombres obligatoria -- se muestran con el siguiente formato:", + "", + "* `/`", + "", + "Entonces, si observas una rama llamada `o/main`, el nombre de la rama es `main`, y el nombre del remoto es `o`.", + "", + "Realmente, la mayoría de los desarrolladores llaman `origin` a su remoto en lugar de `o`. Esto es tan común que git directamente crea tu remoto llamándolo `origin` cuando haces `git clone` de un repositorio.", + "", + "Desafortunadamente, el nombre `origin` no cabe en nuestra UI (interfaz de usuario), así que usamos `o` para abreviar :( Simplemente recuerda que cuando uses el git real, tu remoto ¡probablemente se llame `origin`!", + "", + "Eso es mucho para digerir, así que veámoslo en acción." + ] + } + }, + { + "type": "GitDemonstrationView", + "options": { + "beforeMarkdowns": [ + "Hagamos checkout sobre una rama remota y veamos qué pasa." + ], + "afterMarkdowns": [ + "Como puedes ver, git nos puso en el modo detached `HEAD` y no actualizó `o/main` cuando creamos un nuevo commit. Esto es porque `o/main` sólo va a actualizarse cuando el remoto se actualice." + ], + "command": "git checkout o/main; git commit", + "beforeCommand": "git clone" + } + }, + { + "type": "ModalAlert", + "options": { + "markdowns": [ + "Para terminar este nivel, haz un commit sobre `main` y uno después de hacer checkout a `o/main`. Esto te va a ayudar a aprender cómo se comportan las ramas remotas, y que sólo se actualizan para reflejar el estado del remoto." + ] + } + } + ] + }, "es_ES": { "childViews": [ {