mirror of
https://github.com/pcottle/learnGitBranching.git
synced 2025-09-01 08:17:16 +02:00
Full Spanish translation
This commit is contained in:
parent
f1686932cb
commit
31ea0cedd0
40 changed files with 2397 additions and 4 deletions
|
@ -6,6 +6,7 @@ exports.level = {
|
|||
"de_DE": "Branches in Git",
|
||||
"ja": "Gitのブランチ",
|
||||
"ko": "Git에서 브랜치 쓰기",
|
||||
"es_AR": "Brancheando en Git",
|
||||
"fr_FR": "Gérer les branches avec Git",
|
||||
"zh_CN": "建立Git分支",
|
||||
"zh_TW": "建立 git branch"
|
||||
|
@ -14,6 +15,7 @@ exports.level = {
|
|||
"en_US": "Make a new branch with \"git branch [name]\" and check it out with \"git checkout [name]\"",
|
||||
"de_DE": 'Lege mit "git branch <Name>" einen neuen Branch an und checke ihn mit "git checkout <Name> aus',
|
||||
"ja": "ブランチの作成(\"git branch [ブランチ名]\")と、チェックアウト(\"git checkout [ブランチ名]\")",
|
||||
"es_AR": "Hacé una nueva rama con \"git branch [nombre]\" y cambiá a ella con \"git checkout [nombre]\"",
|
||||
"fr_FR": "Faites une nouvelle branche avec \"git branch [nom]\" positionnez-vous dans celle-ci avec \"git checkout [nom]\"",
|
||||
"zh_CN": "用 'git branch [分支名]' 来创建分支,用 'git checkout [分支名]' 切换到分支",
|
||||
"zh_TW": "用 'git branch [ branch 名稱]' 來建立 branch,用 'git checkout [ branch 名稱]' 切換到該 branch",
|
||||
|
@ -252,6 +254,84 @@ exports.level = {
|
|||
}
|
||||
]
|
||||
},
|
||||
"es_AR": {
|
||||
"childViews": [
|
||||
{
|
||||
"type": "ModalAlert",
|
||||
"options": {
|
||||
"markdowns": [
|
||||
"## Ramas en Git",
|
||||
"",
|
||||
"Las ramas (branches) en Git son increíblemente livianas. Son sólo referencias a un commit específico - nada más. Por esto es que tantos entusiastas de Git siguen el mantra:",
|
||||
"",
|
||||
"```",
|
||||
"brancheá temprano, y brancheá seguido",
|
||||
"```",
|
||||
"",
|
||||
"Como no hay consumo extra de alamcenamiento ni memoria al hacer varias ramas, es más fácil dividir lógicamente tu trabajo que tener un par de ramas grandes.",
|
||||
"",
|
||||
"Cuando empecemos a mezclar ramas y commits, vamos a ver cómo se combinan estas dos herramientas. Por ahora, en cambio, simplemente recordá que una rama escencialmente dice \"Quiero incluir el trabajo de este commit y todos su ancestros\"."
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "GitDemonstrationView",
|
||||
"options": {
|
||||
"beforeMarkdowns": [
|
||||
"Veamos cómo se ven las ramas en práctica.",
|
||||
"",
|
||||
"Acá vamos a crear una rama nueva llamada `newImage`"
|
||||
],
|
||||
"afterMarkdowns": [
|
||||
"Ahí está, ¡eso es todo lo que hay que hacer para branchear! La rama `newImage` ahora referencia al commit `C1`"
|
||||
],
|
||||
"command": "git branch newImage",
|
||||
"beforeCommand": ""
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "GitDemonstrationView",
|
||||
"options": {
|
||||
"beforeMarkdowns": [
|
||||
"Pongamos algo de trabajo en esta nueva rama. Apretá el botón de acá abajo"
|
||||
],
|
||||
"afterMarkdowns": [
|
||||
"¡Uh, no! ¡La rama `master` avanzó, pero `newImage` no! Eso es porque no estábamos \"en\" la rama nueva, y por eso el asterisco (*) estaba en `master`"
|
||||
],
|
||||
"command": "git commit",
|
||||
"beforeCommand": "git branch newImage"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "GitDemonstrationView",
|
||||
"options": {
|
||||
"beforeMarkdowns": [
|
||||
"Digámosle a git que queremos checkoutear esa rama con",
|
||||
"",
|
||||
"```",
|
||||
"git checkout [name]",
|
||||
"```",
|
||||
"",
|
||||
"Esto va a situarnos en esa rama antes de commitear nuestros cambios"
|
||||
],
|
||||
"afterMarkdowns": [
|
||||
"¡Ahí estamos! Nuestros cambios se registraron en nuestra nueva rama"
|
||||
],
|
||||
"command": "git checkout newImage; git commit",
|
||||
"beforeCommand": "git branch newImage"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "ModalAlert",
|
||||
"options": {
|
||||
"markdowns": [
|
||||
"¡Ok! Ya estás listo para manejar ramas. Cuando se cierre esta ventana,",
|
||||
"creá una nueva rama llamada `bugFix` y cambiate a ella"
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"fr_FR": {
|
||||
"childViews": [
|
||||
{
|
||||
|
|
|
@ -2,6 +2,7 @@ exports.level = {
|
|||
"name": {
|
||||
"en_US": "Introduction to Git Commits",
|
||||
"de_DE": "Einführung in Git Commits",
|
||||
"es_AR": "Introducción a los commits de Git",
|
||||
"fr_FR": "Introduction aux commits avec Git",
|
||||
"ja": "Gitのコミット",
|
||||
'ko': 'Git 커밋 소개',
|
||||
|
@ -14,6 +15,7 @@ exports.level = {
|
|||
"hint": {
|
||||
"en_US": "Just type in 'git commit' twice to finish!",
|
||||
"de_DE": "Gib einfach zweimal 'git commit' ein um den Level abzuschließen",
|
||||
"es_AR": "¡Simplemente tipeá 'git commit' dos veces para terminar!",
|
||||
"fr_FR": "Il suffit de saisir 'git commit' deux fois pour réussir !",
|
||||
"zh_CN": "敲两次 'git commit' 就好啦!",
|
||||
"zh_TW": "輸入兩次 'git commit' 就可以完成!",
|
||||
|
@ -154,6 +156,48 @@ exports.level = {
|
|||
}
|
||||
]
|
||||
},
|
||||
"es_AR": {
|
||||
"childViews": [
|
||||
{
|
||||
"type": "ModalAlert",
|
||||
"options": {
|
||||
"markdowns": [
|
||||
"## Commits de Git",
|
||||
"Un commit en un repositorio git registra un snapshot de todos los archivos en tu directorio. Es como un _gran_ copy&paste, ¡pero incluso mejor!",
|
||||
"",
|
||||
"Git pretende mantener los commits tan livianos como sea posible, por lo que no copia ciegamente el directorio completo cada vez que commiteás. Puede (cuando es posible) comprimir un commit como un conjunto de cambios (o un _\"delta\"_) entre una versión de tu repositorio y la siguiente.",
|
||||
"",
|
||||
"Git mantiene, también, un historial de qué commits se hicieron cuándo. Es por eso que la mayoría de los commits tienen commits ancestros arriba suyo -- designamos esto con flechas en nuestra visualización. ¡Mantener el historial es genial para todos los que trabajan en el proyecto!",
|
||||
"",
|
||||
"Hay un montón en lo que ahondar, pero por ahora podés pensar en los commits como snapshots de tu proyecto. Los commits son muy livianos, y ¡cambiar de uno a otro es terriblemente rápido!"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "GitDemonstrationView",
|
||||
"options": {
|
||||
"beforeMarkdowns": [
|
||||
"Veamos cómo se ve esto en la práctica. A la derecha tenemos una visualización de un (pequeño) repositorio git. Hay dos commits ahora: el commit inicial, `C0`, y un commit que lo sigue, `C1`, que podría tener algunos cambios interesantes.",
|
||||
"",
|
||||
"Dale al botón de abajo para hacer un nuevo commit"
|
||||
],
|
||||
"afterMarkdowns": [
|
||||
"¡Ahí va! Increíble. Acabamos de hacer cambios al repositorio y los guardamos como un commit. El commit que acabamos de crear tiene un padre, `C1`, que referencia al commit en que se basó este."
|
||||
],
|
||||
"command": "git commit",
|
||||
"beforeCommand": ""
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "ModalAlert",
|
||||
"options": {
|
||||
"markdowns": [
|
||||
"¡Dale, intentalo vos ahora! Cuando se cierre esta ventana, hacé dos commits para completar el nivel."
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"fr_FR": {
|
||||
"childViews": [
|
||||
{
|
||||
|
|
|
@ -4,6 +4,7 @@ exports.level = {
|
|||
"name": {
|
||||
"en_US": "Merging in Git",
|
||||
"de_DE": "Mergen in git",
|
||||
"es_AR": "Mergeando en Git",
|
||||
"fr_FR": "Faire des 'merge' (fusions de branches) avec Git",
|
||||
"ko": "Git에서 브랜치 합치기(Merge)",
|
||||
"ja": "ブランチとマージ",
|
||||
|
@ -14,6 +15,7 @@ exports.level = {
|
|||
"en_US": "Remember to commit in the order specified (bugFix before master)",
|
||||
"de_DE": "Denk dran in der angegebenen Reihenfolge zu committen (erst bugFix, dann master)",
|
||||
"ja": "指示された順番でコミットすること(masterの前にbugFixで)",
|
||||
"es_AR": "Acordate de commitear en el orden especificado (bugFix antes de master)",
|
||||
"fr_FR": "Pensez à faire des commits dans l'ordre indiqué (bugFix avant master)",
|
||||
"zh_CN": "记住按指定的顺序提交(bugFix先于master)",
|
||||
"zh_TW": "記住按指定的順序 commit(bugFix 比 master 優先)",
|
||||
|
@ -230,6 +232,75 @@ exports.level = {
|
|||
}
|
||||
]
|
||||
},
|
||||
"es_AR": {
|
||||
"childViews": [
|
||||
{
|
||||
"type": "ModalAlert",
|
||||
"options": {
|
||||
"markdowns": [
|
||||
"## Mergeando ramas",
|
||||
"",
|
||||
"¡Genial! Ya sabemos cómo commitear y cómo crear ramas. Ahora tenemos que aprender algún modo de unificar el trabajo de dos ramas diferentes. Esto nos va a permitir abrir una nueva rama de desarrollo, implementar alguna nueva funcionalidad, y después unirla de nuevo con el trabajo principal.",
|
||||
"",
|
||||
"El primer método para combinarlas que vamos a explorar es `git merge`. Mergear en Git crea un commit especial que tiene dos padres diferentes. Un commit con dos padres escencialmente significa \"Quiero incluir todo el trabajo de este padre de acá y este otro padre de acá, *y* del conjunto de todos sus ancestros\"",
|
||||
"",
|
||||
"Es más simple visualizarlo, veámoslo a continuación"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "GitDemonstrationView",
|
||||
"options": {
|
||||
"beforeMarkdowns": [
|
||||
"Acá tenemos dos ramas, y cada una tiene un commit que le es único. Esto significa que ninguna de las ramas incluye \"todo el trabajo\" que hay en nuestro repositorio. Hagamos un merge para solucionar eso.",
|
||||
"",
|
||||
"Vamos a `merge`ar la rama `bugFix` a `master`"
|
||||
],
|
||||
"afterMarkdowns": [
|
||||
"¡Wooow! ¿Viste eso? Primero que nada, `master` ahora apunta a un commit que tiene dos padres. Si seguís las flechas por el árbol de commits empezando desde `master` vas a cruzarte con cada commit del repositorio hasta llegar a la raíz. Esto significa que `master` ahora contiene todo el trabajo que hay en el repositorio.",
|
||||
"",
|
||||
"Además, ¿viste cómo cambiaron los colores de los commits? Para ayudar al aprendizaje, incluí algunas convenciones de colores. Cada rama tiene un color propio. Cada commmit se vuelve del color resultante de mezclar los colores de todas las ramas que lo contienen.",
|
||||
"",
|
||||
"Así que acá vemos que el color de la rama `master` participa en la mezcla de todos los commits, pero que el de `bugFix` no. Arreglemos eso..."
|
||||
],
|
||||
"command": "git merge bugFix",
|
||||
"beforeCommand": "git checkout -b bugFix; git commit; git checkout master; git commit"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "GitDemonstrationView",
|
||||
"options": {
|
||||
"beforeMarkdowns": [
|
||||
"Mergeemos `master` a `bugFix`:"
|
||||
],
|
||||
"afterMarkdowns": [
|
||||
"Como `bugFix` era un ancestro de `master`, git no tuvo que hacer ningún trabajo; simplemente movió `bugFix` al mismo commit al que estaba anexado `master`.",
|
||||
"",
|
||||
"Ahora todos los commits son del mismo color, lo que significa que cada rama contiene todo el trabajo que hay en el repositorio. ¡Wiii!"
|
||||
],
|
||||
"command": "git checkout bugFix; git merge master",
|
||||
"beforeCommand": "git checkout -b bugFix; git commit; git checkout master; git commit; git merge bugFix"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "ModalAlert",
|
||||
"options": {
|
||||
"markdowns": [
|
||||
"Para completar este nivel, seguí estos pasos:",
|
||||
"",
|
||||
"* Creá una nueva rama, llamada `bugFix`",
|
||||
"* Checkouteá la rama `bugFix` usando `git checkout bugFix`",
|
||||
"* Hacé un commit",
|
||||
"* Volvé a `master` con `git checkout`",
|
||||
"* Hacé otro commit",
|
||||
"* Mergeá la rama `bugFix` a `master` usando `git merge`",
|
||||
"",
|
||||
"*Acordate: siempre podés volver a ver este mensaje tipeando \"help level\"!*"
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"fr_FR": {
|
||||
"childViews": [
|
||||
{
|
||||
|
|
|
@ -5,6 +5,7 @@ exports.level = {
|
|||
"en_US": "Rebase Introduction",
|
||||
"de_DE": "Einführung in Rebase",
|
||||
"ja": "Rebaseの解説",
|
||||
"es_AR": "Introducción a rebase",
|
||||
"fr_FR": "Introduction à rebase",
|
||||
"ko": "리베이스(rebase)의 기본",
|
||||
"zh_CN": "Rebase简介",
|
||||
|
@ -15,6 +16,7 @@ exports.level = {
|
|||
"de_DE": "Geh vor dem committen sicher, dass du auf bugFix arbeitest",
|
||||
"ja": "初めにbugFixを指した状態でコミットする",
|
||||
"fr_FR": "Assurez-vous de bien faire votre en premier votre commit sur bugFix",
|
||||
"es_AR": "Asegurate de commitear desde bugFix primero",
|
||||
"ko": "bugFix 브랜치에서 먼저 커밋하세요",
|
||||
"zh_CN": "确保你先在 bugFix 分支进行提交",
|
||||
"zh_TW": "你要先在 bugFix branch 進行 commit"
|
||||
|
@ -224,6 +226,73 @@ exports.level = {
|
|||
}
|
||||
]
|
||||
},
|
||||
"es_AR": {
|
||||
"childViews": [
|
||||
{
|
||||
"type": "ModalAlert",
|
||||
"options": {
|
||||
"markdowns": [
|
||||
"## Git Rebase",
|
||||
"",
|
||||
"El segundo modo de combinar el trabajo de distintas ramas es el *rebase*. Rebasear escencialmente agarra un conjunto de commits, los \"copia\", y los aplica sobre algún otro lado.",
|
||||
"",
|
||||
"Aunque esto pueda sonar confuso, la ventaja de rebasear es que puede usarse para conseguir una secuencia de commits lineal, más bonita. El historial / log de commits del repositorio va a estar mucho más claro si sólo usás rebase.",
|
||||
"",
|
||||
"Veámoslo en acción..."
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "GitDemonstrationView",
|
||||
"options": {
|
||||
"beforeMarkdowns": [
|
||||
"Acá tenemos dos ramas otra vez. Notar que la rama bugFix está actualmente seleccionada (tiene un asterisco)",
|
||||
"",
|
||||
"Nos gustaría mover nuestro trabajo de bugFix directamente sobre el trabajo de master. De ese modo, parecería que esas dos tareas se desarrollaron secuencialmente, cuando en realidad se hicieron en paralelo.",
|
||||
"",
|
||||
"Hagámoslo usando el comando `git rebase`"
|
||||
],
|
||||
"afterMarkdowns": [
|
||||
"¡Genial! Ahora el trabajo de nuestra rama bugFix está justo encima del de master, y tenemos una secuencia lineal de commits.",
|
||||
"",
|
||||
"Notá que el commit C3 sigue existiendo en algún lado (aparece medio desvanecido en el árbol), y C3' es la \"copia\" que rebaseamos sobre master.",
|
||||
"",
|
||||
"El único problema es que master todavía no se actualizó, resolvámoslo ahora..."
|
||||
],
|
||||
"command": "git rebase master",
|
||||
"beforeCommand": "git commit; git checkout -b bugFix C1; git commit"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "GitDemonstrationView",
|
||||
"options": {
|
||||
"beforeMarkdowns": [
|
||||
"Ahora estamos parados sobre la rama `master`. Avancemos y rebaseémosla sobre `bugFix`..."
|
||||
],
|
||||
"afterMarkdowns": [
|
||||
"¡Ahí está! Como `master` era un ancestro de `bugFix`, git simplemente movió la referencia de `master` hacia adelante en la historia."
|
||||
],
|
||||
"command": "git rebase bugFix",
|
||||
"beforeCommand": "git commit; git checkout -b bugFix C1; git commit; git rebase master; git checkout master"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "ModalAlert",
|
||||
"options": {
|
||||
"markdowns": [
|
||||
"Para completar este nivel, hacé lo siguiente:",
|
||||
"",
|
||||
"* Checkouteá una nueva rama llamada `bugFix`",
|
||||
"* Commiteá una vez",
|
||||
"* Volvé a master y commiteå de nuevo",
|
||||
"* Checkoutá bugFix otra vez y rebaseala sobre master",
|
||||
"",
|
||||
"¡Éxitos!"
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"fr_FR": {
|
||||
"childViews": [
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue