+```
+
+{% endcapture %}
+
+{% capture subtree %}
+
+### Subarbre
+
+No cal cap ordre especial.
+
+{% endcapture %}
+
+
+{{ submodule | markdownify }}
+
+
+
+{{ subtree | markdownify }}
+
+
+
+
Recuperant actualitzacions al subprojecte
+
+
+{% capture submodule %}
+
+### Submòdul
+
+```bash
+# Update the submodule repository
+git submodule update --remote
+# Record the changes in the superproject
+git commit -am "Update submodule"
+```
+
+Si teniu més d'un submòdul, podeu afegir el camí (_path_) al submòdul al final de l'ordre `git submodule update --remote` per indicar que subprojecte cal actualitzar.
+
+Per defecte, l'ordre `git submodule update --remote` actualitzarà el submòdul al darrer _commit_ de la _branch_ `main` del submòdul remot.
+
+Podeu canviar la _branch_ per defecte per futures crides amb la seguent ordre:
+
+```bash
+# Git >= 2.22
+git submodule set-branch other-branch
+# or
+git config -f .gitmodules submodule.example-submodule.branch other-branch
+```
+
+{% endcapture %}
+
+{% capture subtree %}
+
+### Subarbre
+
+```bash
+git subtree pull --prefix=example-submodule https://github.com/githubtraining/example-submodule main --squash
+```
+
+Podeu escurçar l'ordre afegint la URL del subarbre com un remot:
+
+```bash
+git remote add sub-remote https://github.com/githubtraining/example-submodule.git
+```
+
+Podeu afegir o recuperar (`add` o `pull`) actualitzacions d'altres referències substituint `main` per la referència desitjada (e.g. `stable`, `v1.0`).
+
+{% endcapture %}
+
+
+{{ submodule | markdownify }}
+
+
+
+{{ subtree | markdownify }}
+
+
+
+
Fent canvis a un subprojecte
+
+A molts casos, es considera una bona pràctica fer els canvis a un clon separat del repositori del subprojecte i obtindre (_pull_) els canvis del projecte pare. Quan això no sigui pràctic, seguiu les seguents pases:
+
+
+{% capture submodule %}
+
+### Submòdul
+
+Accés al directori del submòdul i creeu una _branch_:
+
+```bash
+cd example-submodule
+git switch -c branch-name main
+```
+
+Els canvis requereixen dos _commits_, un al repositori del subprojecte i altre al respositori pare.
+No oblideu enviar les actualitzacions (_push_) tan del submòdul com del superprojecte!
+
+{% endcapture %}
+
+{% capture subtree %}
+
+### Subarbre
+
+No cal cap ordre especial, els canvis seràn enviats a la _branch_ del projecte pare.
+
+Es possible crear _commits_ combinant (_barrejant_) canvis del subprojecte i del projecte pare, però generalment està desaconsejat.
+{% endcapture %}
+
+
+{{ submodule | markdownify }}
+
+
+
+{{ subtree | markdownify }}
+
+
+
+
Enviar canvis al respositori del subprojecte
+
+
+{% capture submodule %}
+
+### Submòdul
+
+Mentre al directory del submòdul:
+
+```bash
+git push
+```
+
+O mentre al directori pare:
+
+```bash
+git push --recurse-submodules=on-demand
+```
+
+{% endcapture %}
+
+{% capture subtree %}
+
+### Subarbre
+
+```bash
+ git subtree push --prefix=example-submodule https://github.com/githubtraining/example-submodule main
+```
+
+{% endcapture %}
+
+
+{{ submodule | markdownify }}
+
+
+
+{{ subtree | markdownify }}
+
+
+
+
Configuracions útils per submòduls
+
+{% capture configs %}
+Mostrar sempre les traces del submòdul quan es consultin les diferències:
+
+```bash
+git config --global diff.submodule log
+```
+
+Mostrar un resum curt dels canvis d'un submòdul al missatge de resposta de l'ordre `git status`:
+
+```bash
+git config --global status.submoduleSummary true
+```
+
+Fer que al executar l'ordre `push`, per defecte tingui l'opció `--recurse-submodules=on-demand`:
+
+```bash
+git config --global push.recurseSubmodules on-demand
+```
+
+Fer que totes les ordres (menys `clone`), per defecte tinguin l'opció `--recurse-submodules` si donen suport a aquesta opció (això funciona per l'ordre `git pull` des de la versió de Git 2.15):
+
+```bash
+git config --global submodule.recurse true
+```
+
+{% endcapture %}
+
+{{ configs | markdownify }}
+
diff --git a/downloads/ca/subversion-migration.md b/downloads/ca/subversion-migration.md
new file mode 100644
index 000000000..cb1c907a9
--- /dev/null
+++ b/downloads/ca/subversion-migration.md
@@ -0,0 +1,104 @@
+---
+layout: cheat-sheet
+redirect_to: false
+title: Migració de Subversion a Git
+byline: Quan cal migrar de Subversion a Git, hi ha un vocabulari i conjunt d'ordres que cal apendre, a més de les noves funcionalitats que només Git aporta. Aquest full de referència pretén ajudar-vos en la vostre transició entre la clàssica tecnologia de Subversion i l'ús modern de Git amb la plataforma de col·laboració GitHub.
+leadingpath: ../../
+---
+
+{% capture migration %}
+## Migrant
+
+### Importador de GitHub
+
+Pels projectes accesibles des de Internet, GitHub.com proveeix **Importer** per fer una importació automàtica des de un repositori Subversion, Team Foundation Server, Mercurial, o a versions alternatives de Git, a un repositori que es crearà automàticament a GitHub.
+
+El procés es molt simple, només cal que inicieu la sessió al vostre compte de GitHub, si encara no ho feu, introduïu l'URL de control de versions del vostre projecte existent al camp "repositori" i inicieu la conversió.
+
+En funció del sistema de control de versions detectat, **Importer** pot sol·licitar informació addicional per a la migració. Això inclou un fitxer on s'informi de l'associació dels noms d'usuari de Subversion a camps Git.
+
+Llegiu més sobre com importar el vostre projecte a GitHub fent una ullada a [la documentació de Importer de GitHub](https://docs.github.com/get-started/importing-your-projects-to-github/importing-source-code-to-github/importing-a-repository-with-github-importer).
+
+### Utilitat SVN2Git
+
+Quan hi han limitacions d'accés o els repositoris de Subversion no son públics i es necessiten migrar a Git, SVN2Git és la utilitat de línia de comandes recomenada i proporciona control a través de cada pas del procés.
+
+Subversion presenta diferències estructurals amb Git respecte als repositoris, i SVN2Git proporciona la flexibilitat i permet la configuració per serveis Subversion tradicionals i personalitzats. Això garanteix que el dipòsit de Git resultant s'alinei amb les millors pràctiques estàndard per a _commits_, _branches_ i _tags_ per a l'historial complet del projecte.
+
+Les característiques més remarcables de SVN2Git son:
+
+- Convertir totes les convencions SVN a l'estructura Git tradicional
+- Proporcionar un camp d'usuaris SVN per nomenar i enviar dades de correu electrònic a les confirmacions de Git
+- Permet patrons d'exclusió per al continguts concrets del repositori Git
+
+Podeu trobar més informació sobre SVN2Git a la pàgina d'inici oficial del projecte:
+
+[https://github.com/nirvdrum/svn2git](https://github.com/nirvdrum/svn2git)
+{% endcapture %}
+
+
+{{ migration | markdownify }}
+
+
+{% capture bridging %}
+## Fent de pont
+
+### Aprofitant el suport de Git per a SVN
+
+Sovint, durant una transició a Git, la infraestructura de Subversion roman al seu lloc mentre els usuaris es familiaritzen interaccionant amb repositoris locals de Git, els fluxos de treball locals i les aplicacions d'escriptori.
+
+L'ordre `git svn` permet als usuaris sincronitzar-se amb un amfitrió centralitzat del repositori Subversion mentre aprofiten tots els avantatges que ofereixen la línia de comandes de Git i els clients gràfics locals.
+
+Per importar un repositori Subversion com a un repositori local Git, descarregueu el projecte sencer amb la seguent ordre:
+
+```bash
+git svn clone [svn-repo-url] --stdlayout
+```
+
+Assegureu-vos d'estar familiaritzats amb l'estructura del repositori Subversion objectiu i si segueix una disposició estàndard o no. Per als dissenys no tradicionals de `trunk`, `branches`, i `tags`, s'han d'especificar les seguents opcions durant l'execució de l'ordre `svn clone`:
+
+- `T [trunk]` per la font principal convencional alternativa
+- `b [branches]` per la ubicació alternativa de les _branches_
+- `t [tags]` per la ubicació alternativa dels _tags_
+
+Un cop finalitzada l'operació de clonació, podeu continuar amb l'operativa normal local de Git per la línia de comandes o amb clients gràfics.
+
+### Sincronitzant amb Subversion
+
+La publicació de l'historial local de Git en un dipòsit central Subversion importat amb el comand `git svn clone` es realitza amb l'ordre:
+
+```bash
+git svn dcommit
+```
+
+Si l'historial del dipòsit de Subversion allotjat conté canvis que encara no hi son al dipòsit local de Git, l'operació `dcommit` es rebutjarà fins que es traslladin amb aquesta ordre:
+
+```bash
+git svn rebase
+```
+
+Tingueu en compte que aquesta acció reescriu l'historial local de Git i els vostres identificadors de _commit_ seran diferents.
+{% endcapture %}
+
+
+{{ bridging | markdownify }}
+
+
+## Comprenent
+
+Subversion i Git comparteixen vocabularis similars, però sovint només són els noms de les ordres. El comportament i la funcionalitat són força diferents donades les qualitats úniques que proporciona Git com a sistema de control de versions distribuït en comparació amb la naturalesa centralitzada de Subversion.
+
+| SVN command | Git command | Git behavior |
+| --- | --- | --- |
+| `status` | `status` | Informa sobre l'estat del arbre de teball |
+| `add` | `add` | Requerit per cada _path_ abans de ser afegit a un _commit_ |
+| `commit` | `commit` | Emmagatzema els canvis agrupats a la història de revisions locals |
+| `rm`, `delete` | `rm` | Prepara els _paths_ per ser eliminats per quan es faci el seguent commit |
+| `move` | `mv` | Prepara el contingut reubicat per quan es faci el seguent commit |
+| `checkout` | `clone` | Adqjuireix l'historial sencer d'un projecte localment per un primer cop |
+| | `branch` | Crea un context local context per agrupar _commits_ |
+| | `merge` | Fusiona histories de _branches_ i canvis al arbre de treball |
+| | `log` | No cal xarxa |
+| | `push` | Envia la història de _commits_ a GitHub/un Servei Git central |
+| | `pull` | Descarrega i integra l'històric d'un repositori GitHub al repositori local|
+| | `fetch` | Descarrega (sense integrar) l'històric d'un repositori GitHub |
diff --git a/index.html b/index.html
index f8b57bdc4..1327355fd 100644
--- a/index.html
+++ b/index.html
@@ -25,6 +25,7 @@ Git Cheat Sheets
{% octicon download %} Azərbaycanca
{% octicon download %} عربى
{% octicon download %} বাংলা
+ {% octicon download %} Català
{% octicon download %} Deutsch
{% octicon download %} Español (PDF)
{% octicon download %} Español