h2.contribute #167

Closed
fede wants to merge 11 commits from h2.contribute into master
120 changed files with 448 additions and 1446 deletions

View File

@ -1,40 +0,0 @@
---
title: "How-to: Mitwirken - Wähle Deinen Weg"
published: true
visible: true
updated:
taxonomy:
category:
- docs
tags:
- contribute
- Mitwirken
page-toc:
active: false
---
# Wie kann ich an den How-to mitwirken?
Es gibt verschiedene Wege, zwischen denen Du wählen kannst:
#### [GIT](/contribute/git)
Du kannst offline arbeiten, ein neues How-to schreiben oder ein bestehendes verbessern, und die Änderungen dann durch git zu **Disroot** "schieben"<br><br>**erforderliche Technikkenntnisse**: Anfänger.
#### [PAD](/contribute/pad)
Du kannst an einer gemeinschaftlichen Online-Textdatei arbeiten, ein How-to schreiben oder verändern, und dann mit dem **Disroot** How-to-Team kommunizieren.<br><br>**erforderliche Technikkenntnisse**: Keine.
#### [EMAIL](/contribute/email)
Du kannst ein How-to auf die von Dir gewünschte Art und Weise schreiben oder verändern und uns eine Email mit der fertigen Arbeit schicken. Wenn Du Vorschläge oder Feedback zu den How-to loswerden möchtest, kannst Du ebenfalls auf diesem Weg mit uns in Kontakt treten. <br><br>**erforderliche Technikkenntnisse**: Anfänger.
#### [FORUM](/contribute/forum)
Über das Forum kannst Du ein How-to hochladen, schreiben oder teilen und außerdem Vorschläge machen, uns ein Feedback geben, etc. <br><br>**erforderliche Technikkenntnisse**: Anfänger.
#### [XMPP](/contribute/xmpp)
Du kannst über unsere **Disroot** How-To Gruppe mit uns kommunizieren.<br><br>**erforderliche Technikkenntnisse**: Absoluter Anfänger.
----
### [Disroot Übersetzungen](/contribute/translations_procedure)
Wenn Du mitwirken möchtest, indem Du **Disroot How-to** in Deine Sprache übersetzt, sieh Dir bitte diese Anleitung an.
### [Disroots How-To Gestaltungsrichtlinie](/contribute/styleguide)
Einige grundlegende Richtlinien für den Inhalt und Formvorgaben für die How-to.

View File

@ -1,39 +0,0 @@
---
title: "How-to Contribute: Choose the way"
published: true
visible: true
updated:
taxonomy:
category:
- docs
tags:
- contribute
page-toc:
active: false
---
# How to contribute to the Howto's?
Here are some ways you can chose:
#### [GIT](/contribute/git)
You can work offline, writing a how-to or improving an existing one, and then "push" the changes through Git.<br><br>**Technical level required**: Basic.
#### [PAD](/contribute/pad)
You can work on an online collaborative text file, writing or modifying a how-to, then communicating with Disroot HowTo team.<br><br>**Technical level required**: None.
#### [EMAIL](/contribute/email)
You can write or modify a how-to the way you want, and send us an email with the finished work. If you have suggestions or feedback on the H2s you could also communicate with us by this mean. <br><br>**Technical level required**: Basic.
#### [FORUM](/contribute/forum)
Through the forum you can upload, write or share a how-to and also make suggestions, give us feedback, etc. <br><br>**Technical level required**: Basic.
#### [XMPP](/contribute/xmpp)
You can communicate with us at our **Disroot** How-To's XMPP Room.<br><br>**Technical level required**: very basic.
----
### [Disroot Translations](/contribute/translations_procedure)
If you want to collaborate by translating **Disroot HowTo** to your language, please, check this guide.
### [Disroot's How-To style guide](/contribute/styleguide)
Some basic guidelines about the content and style criteria for the how-to's.

View File

@ -1,13 +0,0 @@
---
title: Cómo contribuir: Elige la manera
published: true
taxonomy:
category:
- docs
page-toc:
active: false
---
|[GIT](/contribute/git)|[PAD](/contribute/pad)|[CORREO](/contribute/email)|[FORO](/contribute/forum)|[XMPP](/contribute/xmpp)|
|:--:|:--:|:--:|:--:|:--:|
|Puedes trabajar fuera de línea, escribiendo una guía o mejorando una, y luego "mandar" los cambios a través de Git.<br><br>**Nivel técnico requerido**: Muy básico.|Puedes trabajar en línea sobre un archivo de texto colaborativo, escribiendo o modificando un manual, luego comunicarte con el equipo de Manuales y Guías de Disroot.<br><br>**Nivel técnico requerido**: ninguno.|Puedes escribir o modificar una guía de la manera que lo desees, y enviarnos un correo con el trabajo terminado. Si tienes sugerencias o comentarios sobre los Manuales, puedes comunicarte con nosotros por este mismo medio.<br><br>**Nivel técnico requerido**: básico.|A través del foro puedes subir, escribir o compartir un manual o guía y también hacer sugerencias, opinar, etc. <br><br>**Nivel técnico requerido**: muy básico.|Puedes comunicarte con nosotros en nuestra sala XMPP de tutoriales de Disroot.<br><br>**Nivel técnico requerido**: muy básico.|

View File

@ -1,39 +0,0 @@
---
title: "Como contribuir: Escolhe a maneira de o fazer"
published: true
visible: true
updated:
taxonomy:
category:
- docs
tags:
- contribute
page-toc:
active: false
---
# Como contribuir para os tutoriais?
Há algumas ferramentas diferentes que podes escolher:
#### [GIT](/contribute/git)
Podes trabalhar offline, escreves os tutoriais ou correções em tutoriais e depois podes submeter as tuas alterações via Git.<br><br>**Nível técnico necessário**: Basic.
#### [PAD](/contribute/pad)
Podes trabalhar a partir de um texto colaborativo online, escrevendo e modificando o tutorial e depois enviá-lo à equipa do Disroot.<br><br>**Nível técnico necessário**: Nenhum.
#### [EMAIL](/contribute/email)
Podes escrever ou modificar um tutorial da maneira que quiseres e enviá-lo para nós via email. Se tiveres feedback acerca dos tutoriais também podes comunicar connosco via email.<br><br>**Nível técnico necessário**: Básico.
#### [FORUM](/contribute/forum)
Podes publicar, partilhar um tutorial, fazer sugestões, dar feedback e etc, através do Fórum. <br><br>**Nível técnico necessário**: Básico.
#### [XMPP](/contribute/xmpp)
Podes comunicar connosco no nosso grupo online de tutoriais do **Disroot** no XMPP.<br><br>**Nível técnico necessário**: Muito Básico.
----
### [Disroot Translations](/contribute/translations_procedure)
Se queres contribuir com traduções do site **Disroot HowTo** para a tua língua por favor lê este guia.
### [Disroot's How-To style guide](/contribute/styleguide)
Algumas recomendações básicas acerca do conteúdo e formatação dos tutoriais.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

View File

@ -1,31 +0,0 @@
---
title: How-to: Mitwirken via Git
published: true
visible: true
updated:
taxonomy:
category:
- docs
tags:
- contribute
- git
- mitwirken
page-toc:
active: false
---
![](de/git.png)
# Was ist git?
**git** ist eine freie Software zur verteilten Versionsverwaltung, ein Werkzeug, um Dateien, Code und Inhalt zu verfolgen. Es ermöglicht vielen Menschen gleichzeitig, an den Codes zu arbeiten und allen Änderungen zu folgen, indem auf den Computern der Entwickler eine Kopie des Projekts vorliegt. git ist sehr beliebt bei Entwicklern und Systemadministratoren. Darüber hinaus können seine Funktionen überall dort Anwendung finden, wo der Verlauf von Änderungen und die Möglichkeit, Inhalt einzureichen und in Gruppen zusammenzuarbeiten, nötig sind.
Wir nutzen git als Hauptwerkzeug für die Entwicklung unserer How-tos und Website. Es ist auch das Werkzeug, das wir bevorzugen, hauptsächlich, weil seine Anwendung wirklich einfach und schnell und es gleichzeitig sehr mächtig ist. Für die Bearbeitung der Texte nutzen wir **Atom**, einen mächtigen Text- und Code-Editor, wobei Du natürlich einen beliebigen Texteditor Deiner Wahl benutzen kannst.
Auf den nächsten Seiten werden wir Dir zeigen, wie Du diese für die Arbeit an der Dokumentation von **Disroot** nutzen kannst.
### [git: Basics How-to](how-to-use-git)
----
Mehr Informationen über git findest Du [hier](https://de.wikipedia.org/wiki/Git) und in [diesem Onlinebuch](https://git-scm.com/book/de/v2).

View File

@ -1,30 +0,0 @@
---
title: How-to Contribute: Git
published: true
visible: true
updated:
taxonomy:
category:
- docs
tags:
- contribute
- git
page-toc:
active: false
---
![](en/git.png)
# What is git?
**Git** is a distributed version control system, a tool for tracking files, code and content. It allows many people to work on the codes and follow all the changes at the same time with a copy of the project in all the developer's computers. It's very popular among developers and system administrators but it's features can be easily applicable everywhere history of changes and ability to submit content and collaborate in a group is required.
We use it as the main tool for the development of our howtos and website. And it's the one we prefer, mainly because its usage is quite simple, fast and it's very powerful. In addition, we also use **Atom**, a rich text and code editor, although you can use the text editor of your choice.
In the next pages we'll see how to use them for **Disroot**'s documentation.
### [Git: Basics How-to](how-to-use-git)
----
You can find more information about git [here](https://en.wikipedia.org/wiki/Git) and in [this article](https://medium.freecodecamp.org/what-is-git-and-how-to-use-it-c341b049ae61?gi=805863b5a598).

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

View File

@ -1,26 +0,0 @@
---
title: 'Vorlage' <!-- Titel ändern -->
visible: false <!-- ändere visibility in tree: true or false -->
page-toc:
active: true
published: true
taxonomy:
category:
- docs
---
---
|```Meta information```|
|:--:|
|```Dieses How-to wurde zuletzt am ``` **date here** *(Datum kann im Format mm-dd-yy oder yyyy-mm-dd dargestellt werden, z.B.: 01-04-19 or 2019-01-04)* ``` und bezieht sich auf:```<br>**Software name: version 00.0.0-0 for GNU/Linux distro:**<br> <!-- ändere Software und Version auf die aktuelle Software -->|
**Wichtig:**```When sich das How-to auf eine ältere als die von ```**Disroot**``` derzeit bereitgestellte oder von Dir lokal genutzte Softwareversion bezieht, könnten einige Funktionen nicht beschrieben sein oder sich kleinere Teile der bereitgestellten Informationen geändert haben. ```<br> **Disroot's** ``` How-to-Dokumentation ist ein Gemeinschaftsprojekt. Wir versuchen stets so gut es möglich ist, sie auf dem neuesten STand zu halten.```
---
# Hier kommt der tatsächliche Inhalt des How-to hin
---
<center><a rel="license" href="http://creativecommons.org/licenses/by- sa/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://i.creativecommons.org/l/by-sa/4.0/88x31.png" /></a><br />This work is licensed under a <br><a rel="license" href="http://creativecommons.org/licenses/by-sa/4.0/">Creative Commons Attribution-ShareAlike 4.0 International License</a>.</center>
---

View File

@ -1,166 +0,0 @@
---
title: How-to: Mitwirken - Git Basics
published: true
visible: false
updated:
last_modified: "21 August 2019"
app: Git and Atom
app_version: 1.40
taxonomy:
category:
- docs
tags:
- contribute
- git
- mitwirken
page-toc:
active: true
---
# git Basics
Wir werden in diesem Tutorial nicht alle Aspekte der Arbeit mit git abdecken. Es gibt eine Menge umfangreicher Tutorials und Bücher zu diesem Werkzeug und unser Ziel in diesem Tutorial ist es, Dir einen kurzen und einfachen Einstieg zu bieten, damit Du an Tutorials und Übersetzungen für **Disroot** mitwirken kannst.
# Bevor Du mit der Arbeit beginnst
## git installieren
Da alle Änderungen auf Deinem lokalen Rechner stattfinden, musst Du [git installieren](https://gist.github.com/derhuerst/1b15ff4652a867391f03), sowohl um Deine Änderungen einreichen als auch die Änderungen von anderen synchronisieren zu können. Je nach Betriebssystem können sich die einzelnen Schritte zur Installation von git unterscheiden. Folge daher am besten dem Link oder suche nach einer spezifischen Dokumentation, die zu Deinem Betriebssystem passt.
## Atom installieren
Wenn Du ihn bisher noch nicht hast, wird es jetzt Zeit, [Atom](https://atom.io) zu installieren. **Atom** ist ein funktionsreicher Texteditor mit spezieller git-Integration. Wenn Dein Betriebssystem auf der Installationsseite nicht automatisch erkannt wird oder aufgeführt wird, wenn Du auf die [Atom](https://atom.io)-Website gehst, sieh unter [Other platforms](https://github.com/atom/atom/releases/latest) nach. Arch-Nutzer können **Atom** ganz einfach installieren, indem sie `pacman -S atom` oder einen anderen Paketmanager ihrer Wahl nutzen.
## Einen Account auf einer git-Instanz erstellen
Nach der Installation von **git** und **Atom** benötigst Du einen Account auf der git-Instanz von **Disroot**. Seit kurzem haben wir eine eigene **gitea**-Instanz, bei der Du Dich jedoch nochmal gesondert registrieren musst. Dein **Disroot**-Account ist hier nicht gültig. Zur Erleichterung der Zuordnung wäre es natürlich nicht verkehrt, wenn Du Deinen **Disroot**-Benutzernamen auch auf unserer **git**-Instanz nutzt.
Um einen Account zu erstellen, gehe einfach zu [https://git.disroot.org](https://git.disroot.org) und registriere Dich.
## Den Arbeitsplatz vorbereiten
Git trägt von Natur aus die Zusammenarbeit in seinem Herzen. Als erstes benötigst Du eine Kopie aller Dateien des Projekts auf Deiner lokalen Festplatte. Dieser Vorgang wird "*Klonen eines Repository*" genannt. Alle Veränderungen finden auf Deinem lokalen Rechner statt (die meiste Arbeit wird offline erledigt). Wenn Du der Meinung bist, mit den Änderungen fertig zu sein, kannst Du sie zurück zum Repository auf dem Server senden/synchronisieren (*push*).
### Das **Howto Disroot** Repository klonen
Um das Repository zu klonen, öffne einfach ein Terminal, gehe zu dem Verzeichnis, in welches Du das Repository klonen möchtest und starte das `git clone <url>`-Kommando, wobei grundsätzlich *<url>* die Adresse des Repository ist, das Du klonen möchtest. In unserem Fall wäre das:
`git clone https://git.disroot.org/disroot/howto`
Es wird nun eine 1:1-Kopie des Repository auf Deiner Festplatte erstellt.
Später kannst Du dieses Verzeichnis an jeden Platz auf Deinem Rechner verschieben, wo auch immer Du möchtest.
### Zugang zum Repository
Um Änderungen beim **Disroot** git-Repository einreichen zu können, musst Du einen Zugang beantragen. Dies kannst Du über unsere [git-Projektseite](https://git.disroot.org/disroot/howto) machen.
![](de/git-request_access.png)
Wenn ein Administrator Dir Zugang gewährt hat, kannst Du Deine Änderungen auf den Server schieben (*push*).
!! ![](/home.icons/note.png)
!! TIPP: Du kannst auch schon anfangen zu arbeiten, bevor Dir Zugang gewährt wurde. Die Änderungen finden nur auf Deinem lokalen Rechner statt.
# Mit der Arbeit beginnen
Jetzt kannst Du **Atom** starten.
Gehe zum Menüpunkt ***File***, wähle `Open Folder` und suche das Verzeichnis, das Du gerade geklont hast (*howto*).
Die Benutzeroberfläche von **Atom** ist übersichtlich und einfach zu verstehen. Auf der linken Seite findest Du die Ordnerstruktur der Projekts, in der Mitte befindet sich das Fenster, in dem Du die Dateien bearbeitest, und in der unteren Leiste zeigt Dir die Anzahl der geänderten Dateien, die aktuelle "branch" und die schnelle Möglichkeit an, Dateien von git zu ziehen oder zu git zu schieben (*push/pull*).
![](de/atom1.png)
Du kannst gleichzeitig mehrere Dateien öffnen und in ihnen arbeiten, indem Du mehrere Tabs oder einen Split-Screen öffnest.
Ungespeicherte Dateien mit lokalen Änderungen werden mit einem blauen Punkt markiert (abhängig von dem Theme, das Du nutzt). Um die Änderungen zu speichern, benutze das *File*-Menü oder den Shortcut *Strg+s*.
**Bevor** Du mit der Arbeit beginnen kannst, musst Du noch eine eigene **Branch** erstellen.
## Branches erstellen
Branches sind im Prinzip Dein eigener, privater Arbeitsplatz.
Jedes git-Projekt hat seine eigene **Master**-Branch. Die Master-Branch ist die Hauptkopie des Projekts, die Produktivversion. Diese Branch wird automatisch mit der Website synchronisiert, jede Änderung an dieser Branch wird also sofort auf der Website umgesetzt. Aus diesem Grund sind die Änderungsrechte an der **Master**-Branch auf die Eigentümer des Projekts beschränkt.
Um mit der Arbeit zu beginnen, erstelle Deine eigene Branch. Diese wird im Prinzip ein Klon der **Master**-Branch sein.
In **Atom** klickst DU in der unteren rechten Ecke auf **master** (oder einen anderen Branch-Namen) und wählst ***New Branch***. Überlege Dir einen Name für Deine Branch, irgendetwas Einfaches, anhand dessen die anderen Beteiligten erkennen können, woran Du arbeitest. Wenn Du zum Beispiel an einem Nextcloud How-to arbeiten willst, kannst Du Deine Branch "nextcloud_howto" nennen. Bei der Namensvergabe sind einige Zeichenregeln zu beachten. Nutze keine Sonderzeichen und verbinde die einzelnen Worte mit "\_", dann sollte es keine Probleme geben.
Drücke **Enter** auf Deiner Tastatur, wenn Du soweit bsit.
![](de/atom-branch1.gif)
Jetzt musst Du Deine neue Branch noch veröffentlichen (**publish**), damit sie auch auf dem Server erstellt wird. **Atom** wird Dich nach Deinen Anmeldedaten fragen, gib hier die Daten für unsere git-Instanz ein.
![](de/publish.png)
In diesem Menü kannst Du auch zwischen Branches wechseln. Die aktuelle Arbeits-Branch wird Dir in der Fußleiste angezeigt. Wenn Du darauf klickst, werden Dir die anderen lokalen Branches angezeigt.
![](de/atom-branch2.gif)
Wenn Du Deine Branch erstellt und veröffentlicht hast und Deine aktuelle Arbeits-Branch ausgewählt ist, kannst Du neue Dateien erstellen, bestehende bearbeiten, etc.
## Änderungen übergeben
Deine Arbeit, das Erstellen neuer oder Übersetzen bestehender Tutorials, findet nun auf Deinem Computer statt. Abgesehen vom Speichern der Änderungen auf Deinem Speichermedium kannst/solltest Du Deine Änderungen auch übergeben (**commit**).
Das Übergeben der Änderungen synchronisiert die von dir erledigte Arbeit mit Deiner Branch auf dem git-Server. Ein "Commit" ist also ein Satz erstellter oder veränderter Dateien. Wenn die Branch in dem Repository nicht existiert, wird sie erstellt und alle Deine Änderungen und neuen Dateien werden auf den Server hochgeladen. Auf diese Weise kannst Du an verschiedenen Geräten an Deinen Dateien arbeiten oder andere Entwickler können übernehmen und bei der Arbeit an Deiner Branch helfen.
Um Deine Änderungen zu übergeben musst Du:
- Sicherstellen, dass alle Dateien gespeichert sind (ohne blauen Markierungspunkt)
- Die geänderten Dateien, die übergeben werden sollen, bereitstellen (**stage**)
- Eine **Übergabenachricht** schreiben (eine kurze und knackige Zusammenfassung der Änderungen)
- Den ***commit***-Button klicken
![](de/atom-commit.gif)
Wenn Deine Dateien bereitgestellt sind, ist es Zeit, sie auf den Server zu schieben (**push**):
- Öffne das ***Push/Pull***-Popup-Fenster
- Klicke auf ***Push***
![](de/atom-push.gif)
## Zusammenführung beantragen (Merge request)
Wenn Du denkst, dass Deine Arbeit beendet und bereit für die Veröffentlichung ist, wird es Zeit, sie mit der **Master**-Branch zusammenzuführen.
![](de/note.png) <br>**WICHTIG!!!**
Während Du an Deiner Branch arbeitest, kann es parallel zu weiteren Änderungen durch andere Nutzer kommen, insbesondere wenn Du bestehende Dateien bearbeitest. Wenn diese Änderungen anderer Nutzer bereits mit der Masterbranch zusammengeführt wurden, kann es passieren, dass diese Änderungen in Deiner Version noch nicht enthalten sind. Versuchst Du nun, Deine Änderungen der nun veralteten Dateien mit der Masterbranch zusammenführen zu lassen, kann es ziemlich chaotisch werden.
![](de/git-merge_chaos.gif)
Glücklicherweise ist git in der Lage, Versionen zu vergleichen und Deine Änderungen in die aktualisierten Dateien einzufügen. Dazu musst Du jedoch, bevor Du eine Zusammenführung beantragst (**Create Merge Request**), Deine Arbeitsbranch aktualisieren. Durch diese Vorgehensweise kannst Du den Admins und Dir selbst eine Menge unnötiger Arbeit ersparen:
- Stelle zunächst sicher, dass alle Änderungen übergeben wurden
- Öffne ein Terminal (Linux)
- Wechsle in die **Master Branch**: ***git checkout master***
- Aktualisiere Deine lokale **Master Branch**: ***git pull***
- Wechsle zurück in Deine Arbeitsbranch: ***git checkout <Branch_Name>***
- Aktualisiere die Arbeitsbranch aus der lokalen **Master Branch**: ***git rebase master***
- Verifiziere alle Änderungen und übergib die Dateien an den Server
Nun kannst Du loslegen mit den finalen Schritten, um Deine Dateien mit der **Master Branch** zusammenzuführen:
- Stelle zunächst sicher, dass alle Änderungen übergeben wurden
- Log Dich in unsere [git-Instanz](https://git.disroot.org) ein
- Wenn Du Änderungen zu unserer Branch geschoben hast, wirst Du in der rechten oberen Ecke einen **"Create Merge Request"**-Button sehen. Klicke ihn an, es öffnet sich ein Formular
- Füge einen Titel hinzu (falls er nicht automatisch eingefügt wurde)
- Füge eine Beschreibung hinzu (falls sie nicht automatisch hinzugefügt wurde)
- Überprüfe, dass die Quelle (**source branch**) diejenige ist, von der aus zusammengeführt werden soll (die Branch, in der Du gearbeitet hast)
- Überprüfe, dass das Ziel (**target branch**) die Branch ist, in der die Änderungen zusammengeführt werden sollen (normalerweise die **Master**-Branch)
- Die Checkbox **Delete source branch when merge request is accepted** auszuwählen ist eine gute Idee, wenn Du mit Deiner Arbeit an Deiner Branch vollständig fertig bist
![](de/git-merge_request.gif)
Wenn Du eine Zusammenführungsanfrage erstellt hast, wird sie durch die **Disroot**-Admins überprüft und, wenn alles in Ordnung ist, können sie Deine Übergabe genehmigen. Das heißt, dass Deine Änderungen mit der **Master**-Branch zusammengeführt werden und ab sofort auf der Website sichtbar sind.
Wenn es irgendwelche Probleme gibt, können die Admins Dich bitten, etwas nachzuarbeiten. Wenn Du Deine Korrekturen erledigt hast und die Dokumentation den **Disroot**-Richtlinien entspricht, wird Die Übergabe Deiner Änderungen stattfinden. Es ist nicht nötig, dass Du eine neue Zusammenführungsanfrage erstellst.
## Änderungen vom Server ziehen
Wenn Du Deine lokale **Master**-Branch und Deine lokalen Arbeitsbranches aktuell halten möchtest (was DU definitiv tun solltest, da es ansonsten ein ziemlich großes Durcheinander geben kann), muss Du, am besten regelmäßig, Änderungen vom Server ziehen.
Jedes Mal, wenn Änderungen von einem Beteiligten mit der **Master**-Branch zusammengeführt werden, sollte jeder die Änderungen auch in seine lokalen Branches ziehen. Dann kannst Du auch ganz einfach sehen, welche Änderungen aktuell durchgeführt wurden und welchen EInfluss sie eventuell auf Deine Arbeit haben. In der **Master**-Branch halten wir eine Datei vor, die **CHANGELOG** genannt wird und in der alle wichtigen Änderungen an den How-to's festhalten.
Das Ziehen von Änderungen sollte regelmäßig stattfinden (insbesondere, bevor Du anfängst, an einer neuen Branch zu arbeiten).
- Öffne das ***Push/Pull*** Popup-Fenster
- Klicke auf ***Pull***
![](de/atom-pull.gif)
## Vorlage für die How-to's
Du kannst Dir [hier](de/template.txt) den Inhalt kopieren und Deine eigene How-to-Datei erstellen.

View File

@ -1,103 +0,0 @@
---
title: Cómo contribuir: Git
published: true
visible: true
taxonomy:
category:
- docs
---
Este artículo tratará de explicar los conceptos básicos del uso de Git para contribuir a las traducciones, así como a la presentación de nuevos tutoriales.
Para seguir todos los cambios y el trabajo de múltiples personas trabajando al mismo tiempo, hemos decidido usar **Git** como nuestro sistema de control de versiones. Git es una herramienta muy popular entre desarrolladores y administradores de sistemas, pero sus características pueden ser fácilmente aplicables en cualquier lugar donde se requiera un historial de cambios y capacidad de enviar contenido y colaborar en grupo.
En este tutorial no cubriremos todos los aspectos sobre el uso de Git. Es una herramienta muy compleja y poderosa con toneladas de tutoriales y libros escritos en profundidad sobre ella. Lo que pretendemos es proporcionar una breve y fácil guía para contribuir a tutoriales y traducciones.
# Cómo crear una cuenta en una instancia de Git
Lo primero que necesitarás será una cuenta en la instancia Git usada por disroot.org. <!--Desafortunadamente, Git no es todavía un servicio federado, por lo que necesitarás tener una cuenta. Gracias a nuestros amigos de la **Comunidad FOSS India**, alojamos todo nuestro trabajo en su instancia de GitLab.-->
Para crear una cuenta, simplemente ve a [https://git.disroot.org](https://git.disroot.org) y regístrate. Además de registrarte con una nueva cuenta, también puedes escoger usar alguno de los proveedores de IDs que se ofrecen, tales como GitLab, GitHub, Twitter, Gitbucket o Google, si ya tienes cuenta en alguna de estas plataformas.
# Instalando Git
Dado que todas las modificaciones tendrán lugar en tu máquina local, necesitarás [instalar Git](https://gist.github.com/derhuerst/1b15ff4652a867391f03) para poder enviar tus cambios, así como para sincronizar los cambios de terceros. Dependiendo de tu plataforma, las formas de instalar Git pueden variar, así pues, consulta el enlace superior o dirígete a la documentación específica de tu plataforma.
# Instalando el editor Atom
Si no lo tienes todavía, es el momento de instalar [Atom](https://atom.io). Atom es un editor de texto enriquecido con especial integración con Git. Si tu sistema operativo no es detectado automáticamente o no aparece relacionado en el sitio web de [Atom](https://atom.io), consulta [otras plataformas](https://github.com/atom/atom/releases/latest). Si eres usuario de Arch, puedes instalarlo simplemente usando `pacman -S atom` u otro gestor de paquetes de tu elección.
# Clonando el repositorio
Git se crea con colaboración en su núcleo. Lo primero que debes hacer es obtener una copia de todos los archivos del proyecto (repositorio Git) en tu disco duro local. Todas las modificaciones se realizan en tu máquina local (trabajarás fuera de línea). Solo cuando tú lo decidas, podrás enviar o sincronizar (*push*) los cambios que hayas realizado (nuevo tutorial, nueva traducción, etc.) con el repositorio del servidor.
La forma más sencilla de clonar un repositorio es abrir tu terminal, navegar hasta el directorio donde te gustaría clonar el repositorio y ejecutar el comando `git clone <url>`, donde *<url>* es básicamente la dirección del repositorio que quieres clonar. En nuestro caso, sería:
`git clone https://git.disroot.org/disroot/howto`
Una vez se ha copiado el repositorio en tu disco duro, verás un directorio `howto` que contiene todos los archivos por los que podías navegar previamente desde tu navegador web cuando visitabas la url de nuestro repositorio.
Puedes mover ese directorio más tarde a cualquier lugar que desees de tu disco duro.
# Petición de acceso al respositorio Git howto
Para poder confirmar (*commit*) cambios en el repositorio Git de Disroot, necesitas solicitar acceso. Una vez los administradores te concedan acceso, podrás publicar tus cambios en el servidor (ten en cuenta que puedes empezar a trabajar sin necesidad de que te concedan acceso, ya que todos los cambios ocurren en tu computadora local).
![](en/git-request_access.png)
# Ahora puede empezar el trabajo
Ahora puedes iniciar Atom y abrir la carpeta (`Open Folder`) que acabas de clonar (*howto*). La interfaz de Atom es limpia y fácil de entender. La barra lateral izquierda es tu árbol de navegación de proyecto, la ventana central es donde editas archivos y la barra inferior indica el número de archivos cambiados, la rama actual y proporcina acceso rápido a las funciones pull/push.
![](en/atom1.png)
Puedes abrir y trabajar en múltiples archivos a la vez mediante pestañas o dividiendo la pantalla en dos.
Los archivos no guardados con modificaciones locales se indican con un punto azul (dependiendo del tema que estés usando, por supuesto).
Para guardar los cambios de un archivo, usa el menú *File* o el atajo de teclado *Ctrl+s*.
**Pero** antes de empezar a trabajar en los archivos, necesitarás crear tu propia **rama** (*branch*).
# Ramas de Git
Las ramas (*branches*) son básicamente tus propios espacios de trabajo privado. Cada proyecto Git tiene su propia rama **maestra** (*master branch*). La rama maestra es la rama principal, la copia de *producción* de un proyecto. Esta rama se sincroniza automáticamente con el sitio web, por lo que cualquier cambio hecho en esta rama es instantáneamente visible en el sitio web. Es por eso que añadir cualquier cambio a la rama **maestra** está restringido sólo a los propietarios del proyecto.
Para que puedas empezar a trabajar, crea tu propia rama. Esto básicamente hará un clon de la rama **maestra**.
![](en/atom-branch1.gif)
El cambio entre ramas puede también hacerse desde ese menú. La rama de trabajo actual es visible en la barra inferior.
![](en/atom-branch2.gif)
Una vez la rama se ha creado y te has cambiado a ella, puedes crear nuevos archivos, modificar los existentes, etc.
# Confirmar tus cambios
Okey, así pues, ya estás trabajando con tu computadora creando nuevos tutoriales o traduciendo los existentes. A parte de guardar tus cambios en tu portátil, puedes o deberías también confirmar (*commit*) tus cambios. Confirmar tus cambios sincroniza el trabajo que has hecho en tu rama con el servidor Git. Si la rama no existe en el servior, será creada y todas tus modificaciones y nuevos archivos serán subidos al servidor. De esta forma puedes trabajar con archivos en múltiples máquinas, u otras personas puedan hacerse cargo y ayudar colaborando en tu rama.
Para confirmar tus cambios, necesitas:
- Asegurarte de que todos tus archivos han sido guardados
- Preparar todos los archivos que has modificado y quieres confirmar en el servidor
- Escribir un mensaje de confirmación - escribe un breve resumen de lo que has cambiado (no demasiado largo),
- Pulsar el botón 'commit'
![]()
Una vez los archivos han sido confirmados, es el momento de publicarlos en el servidor:
- Abrir la ventana emergente 'push/pull'
- Presionar **push**
# Petición de fusión
Cuando pienses que tu trabajo ha terminado y esté listo para ser publicado en el sitio web, es el momento de fusionarlo con la **rama maestra** (*master branch*).
- En primer lugar, por supuesto, necesitarás asegurarte de que todos los cambios han sido confirmados mediante *commit*.
- Ingresa en [https://git.disroot.org](https://git.disroot.org)
- Si publicaste en el servidor algún cambio en tu rama, en la parte superior derecha verás el botón **"Create Merge Request"** (Crear petición de fusión)
- Pulsando este botón se abrirá el formulario de petición de fusión
- Añade un título
- Añade una descripción
- Asegúrate de que **source branch** (rama fuente) es la que quieres fusionar (en la que trabajaste)
- Asegúrate de que **target branch** (rama destino) es aquella con la que quieres que se fusione (normalmente la rama maestra o *master branch*)
![](en/git-merge_request.gif)
Una vez creada la petición de fusión, será revisada por un administrador de Disroot. Los administradores pueden entonces aprobar tu *commit*, lo que significa que será fusionado con la rama maestra y, por tanto, visible en el sitio web, o pedirte que corrijas algo. Una vez que efectuadas todas las correcciones y los *"jefes supremos"* de Disroot estén satisfechos, tu petición de fusión será publicada en la rama maestra.
# Recibir cambios a partir del servidor
Si quieres mantener la rama **maestra** local y tu rama local actualizada, necesitarás recibir (*pull*) los últimos cambios a partir del servidor. Cada vez que se confirma una petición de fusión de alguien en la rama maestra, todos deberían actualizar los cambios en sus ramas locales. De esta forma puedes fácilmente ver qué hay de nuevo y qué se ha cambiado recientemente. En la rama maestra, mantenemos un archivo llamado "CHANGELOG" donde puedes informarte de todos los cambios significativos efectuados en el repositorio Howto.
La recepciones o *pulling* deberían hacerse de forma regular (especialmente antes de empezar a trabajar en una nueva rama).
- Abre la ventana emergente push/pull
- Presiona **pull**
# Algo de vocabulario y definiciones
**Repositorio Git** - Un directorio con todos los archivos que pertenecen al proyecto.

View File

@ -1,107 +0,0 @@
---
title: Comment utiliser Git pour contribuer aux guides Disroot
published: true
visible: true
taxonomy:
category:
- docs
---
Cet article va essayer d'expliquer les bases de l'utilisation de git pour contribuer aux traductions ainsi que pour soumettre de nouveaux tutoriels.
Afin de suivre tous les changements et de travailler avec plusieurs personnes en même temps, nous avons choisi d'utiliser **git** comme système de contrôle de version. Git est un outil très populaire parmi les développeurs et les administrateurs système, mais ses fonctionnalités peuvent être facilement applicables partout où l'historique des changements et la capacité de soumettre du contenu et de collaborer dans un groupe est nécessaire.
Dans ce tutoriel, nous ne couvrirons pas tous les aspects de l'utilisation de git. C'est un outil très complexe et puissant avec des tonnes de tutoriels approfondis et des livres écrits à son sujet. Nous cherchons à fournir un moyen court et facile pour contribuer aux tutoriels et aux traductions.
# Comment créer un compte sur l'instance git
Tout d'abord, vous avez besoin d'un compte sur l'instance git utilisée par disroot.org.<!-- Malheureusement git n'est pas encore un service fédéré donc vous devez avoir un compte. Grâce à nos amis de **FOSS Community India**, nous hébergeons tout notre travail sur leur instance gitlab.-->
Pour créer un compte, allez sur [https://git.disroot.org](https://git.disroot.org) et enregistrez-vous. En plus de l'enregistrement d'un nouveau compte, vous pouvez choisir d'utiliser l'un des fournisseurs d'ID tels que gitlab.com, github, twitter, gitbucket, google si vous avez déjà un compte sur l'une de ces plateformes.
# Installer Git
Comme toutes les modifications seront effectuées sur votre machine locale, vous devez [installer git](https://gist.github.com/derhuerst/1b15ff4652a867391f03) pour pouvoir envoyer vos modifications ainsi que les changements de synchronisation des autres. Selon votre plate-forme, les méthodes d'installation de git peuvent varier, alors vérifiez le lien ci-dessus ou consultez la documentation spécifique à votre plate-forme.
# Installer l'éditeur Atom
Si vous ne l'avez pas encore fait, il est temps d'installer [Atom](https://atom.io). Atom est un éditeur de texte riche en fonctionnalités avec une intégration git spéciale. Si votre système d'exploitation n'est pas automatiquement détecté ou répertorié lorsque vous accédez au site [Atoms](https://atom.io), vérifiez sur [d'autres plateformes](https://github.com/atom/atom/releases/latest). Pour tous les utilisateurs d'Arch, vous pouvez simplement l'installer en utilisant `pacman -S atom` ou un autre gestionnaire de paquets de votre choix.
# Cloner le dépôt
Git est créé avec la collaboration dans son noyau. La première chose que nous devons faire est d'obtenir une copie de tous les fichiers du projet (git repository) sur votre disque dur local. Toutes les modifications sont effectuées sur votre machine locale (vous travaillez hors ligne). Ce n'est qu'une fois les changements décidés (nouveau tutoriel, traduction) sont terminés que vous pouvez décider de les envoyer/synchroniser (push) vers le référentiel sur le serveur.
La façon la plus simple de cloner le référentiel est d'ouvrir votre terminal, en naviguant vers le répertoire dans lequel vous voulez cloner le référentiel, et d'exécuter la commande `git clone <url>`, où *<url>* est essentiellement l'adresse du dépôt que vous voulez cloner. Dans notre cas, ce serait :
`git clone https://git.disroot.org/Disroot/Howto.git`
Une fois que le dépot est copié sur votre disque dur, vous verrez un répertoire `Howto` qui contient tous les fichiers que vous pouviez auparavant voir dans votre navigateur lorsque vous êtiez sur l'URL de notre dépôt.
Vous pouvez déplacer plus tard ce répertoire à n'importe quel endroit de votre disque dur.
# Demander l'accès au dépôt howto git
Pour pouvoir suggérer des changements dans le dépôt git, vous devez demander l'accès. Une fois l'accès accordé par les administrateurs, vous pourrez pousser vos changements sur le serveur (*note : vous pouvez commencer à travailler sans l'accès accordé car tous les changements se produisent en local sur votre ordinateur*).
![](en/git-request_access.png)
# Maintenant, le travail peut commencer.
Maintenant vous pouvez démarrer Atom et `Ouvrir le dossier` que vous venez de cloner (*Howto*). L'interface d'Atom est claire et facile à comprendre. La barre latérale de gauche est l'arborescence de navigation de votre projet ; la fenêtre du milieu est l'endroit où vous éditez les fichiers ; la barre du bas indique le nombre de fichiers modifiés, la branche courante, pull/push rapidement sur git.
![](en/atom1.png)
Vous pouvez ouvrir et travailler sur plusieurs fichiers dans des onglets ou comme écran divisé côte à côte.
Les fichiers non sauvegardés avec des modifications locales sont marqués d'un point bleu (selon le thème utilisé, bien sûr)
Pour enregistrer les modifications de fichier, utilisez le menu *Fichier* ou le raccourci clavier *Ctrl+s*.
Mais avant de commencer à travailler sur les fichiers, vous devez créer votre propre : **branche**
# Branches Git
Les branches sont essentiellement vos propres espaces de travail privés. Chaque projet git a sa propre branche **master**. La branche master est la principale copie *production* du projet. Cette branche est automatiquement synchronisée avec le site Web, de sorte que toute modification apportée à cette branche est immédiatement visible sur le site Web. C'est aussi pourquoi l'ajout de modifications à la branche **master** est limité aux seuls propriétaires du projet.
Afin que vous puissiez commencer à travailler, créez votre propre branche. Ceci sera en fait un clone de la branche **master**.
![](en/atom-branch1.gif)
Il est également possible de passer d'une branche à l'autre à partir de ce menu. La branche de travail actuelle est visible sur la barre inférieure.
![](en/atom-branch2.gif)
Une fois la branche créée et modifiée, vous pouvez créer de nouveaux fichiers, modifier les fichiers existants, etc.
# Valider vos changements
Ok, donc vous travaillez sur votre ordinateur pour créer de nouveaux tutoriels ou traduire ceux qui existent déjà. En plus d'enregistrer les modifications sur votre ordinateur portable, vous pouvez/devriez également valider vos modifications. Le fait d'effectuer des changements synchronise le travail que vous avez fait sur votre branche avec le serveur git. Si la branche n'existe pas sur le serveur, elle sera créée et toutes vos modifications et nouveaux fichiers seront envoyés sur le serveur. Dans ce cas, vous pouvez travailler sur vos fichiers sur plusieurs machines, ou d'autres personnes peuvent prendre la relève et vous aider à travailler sur votre branche.
Pour valider vos changements, voici ce qui doit être fait :
- s'assurer que tous les fichiers sont sauvegardés
- mettre en "stage" tous les fichiers que vous avez modifiés et que vous souhaitez "commit" sur le serveur.
- écrire un message de "commit" - c'est un petit résumé à-propos des changements.
- appuyer sur le bouton [ Valider ]
![](en/atom-commit.gif)
Une fois les fichiers validés, il est temps de les pousser vers le serveur :
- Ouvrir la fenêtre "popup push/pull"
- Appuyer sur le bouton [ Push ]
![](en/atom-push.gif)
# Demande de fusion ("Merge request")
Une fois que vous pensez votre travail terminé et prêt à être publié sur le site, il est temps de le fusionner avec la branche **master**.
- Bien sûr, vous devez d'abord vous assurer que tous les changements sont bien effectués.
- Connectez-vous sur [https://git.disroot.org](https://git.disroot.org)
- Si vous avez appuyé sur n'importe quel changement au serveur de votre branche, en haut à droite, vous verrez le bouton **"Créer une demande de fusion"**.
- Cela va ouvrir le formulaire de demande de fusion.
- Ajoutez le titre
- Ajoutez une description
- Assurez-vous que la **branche source** soit celle depuis laquelle vous voulez fusionner (*la branche sur laquelle vous avez travaillée*)
- Assurez-vous que la branche **cible** soit celle vers laquelle vous voulez fusionner (*habituellement la branche "master"*)
![](en/git-merge_request.gif)
Une fois que vous avez créé la demande de fusion, elle sera examinée par les administrateurs de Disroot. Les administrateurs peuvent alors accepter votre commit ce qui signifie qu'il sera fusionné avec la branche master et donc visible sur le site, ou vous demander de corriger quelque chose. Une fois que toutes les corrections sont effectuées et que les *chefs suprêmes* de Disroot sont satisfaits, votre demande de fusion sera ajoutée à la banche "master".
# Récupérer ("pull") les changements du serveur
Si vous voulez garder la branche locale **master** et votre branche locale à jour, vous devez récupérer les modifications du serveur. Chaque fois que quelqu'un voit sa demande de fusion ajoutée à la branche "master", tout le monde devrait aussi ajouter ("pull") les changements dans ses branches locales. Vous pouvez alors voir facilement ce qui est nouveau et ce qui a changé récemment. Sur la branche maître, nous conservons un fichier appelé "**CHANGELOG**" dans lequel nous notons toutes les modifications importantes apportées à Howtos.
Le tirage ("pull") doit être effectué régulièrement (**surtout avant de commencer à travailler sur une nouvelle branche**).
- Ouvrir la fenêtre "popup push / pull"
- Appuyez sur le bouton [ Pull ] .
![](en/atom-pull.gif)
# Un peu de vocabulaire et d'explications
**Dépôt git** - Répertoire qui regroupe tous les fichiers appartenant au projet.

View File

@ -1,106 +0,0 @@
---
title: Como usar o Git e contribuir para os manuais do disroot
published: true
visible: true
taxonomy:
category:
- docs
---
Este artigo tentará explicar princípios base sobre como utilizar o git para poder contribuir para as traduções, bem como criar e submeter novos manuais/tutoriais.
De modo a poder acompanhar todas as alterações e poder trabalhar com várias pessoas ao mesmo tempo, nós escolhemos utilizar o **git** como o nosso sistema de controlo de versões. O Git é uma ferramenta muito popular entre programadores e administradores de sistemas, mas as suas funcionalidades podem ser facilmente aplicáveis em qualquer contexto onde seja necessário a possibilidade de submeter conteúdos e trabalhar em equipa.
Neste guia, não vamos cobrir todas as funcionalidades do git. É uma ferramenta bastante complexa e poderosa, com um montão de tutoriais/manuais/guias já escritos sobre como funcionam essas funcionalidades. O que queremos com este guia sobre git é mostrar de uma maneira curta como contribuir de um modo simples para traduções e manuais/guias.
# Como criar uma conta de utilizador num serviço de Git
Antes de mais é necessário criar uma conta de utilizador no serviço de git utilizado pelo disroot.org.
<!--Infelizmente o git não é um serviço federado, por isso é necessário criar uma conta de utilizador. Nós alojamos todo o nosso trabalho na instância de Gitlab dos nossos amigos da **FOSS Community India**.-->
Para criar uma conta de utilizador, basta ir a [https://git.disroot.org](https://git.disroot.org) e registar-se. Para além de registar uma nova conta, pode escolher utilizar como metodo de autenticação, o gitlab.com, github, twitter, gitbucket, google caso já tenha uma conta numa dessas plataformas.
# Instalar o Git
Como todo o trabalho será feito no seu computador, necessita de [instalar o git](https://gist.github.com/derhuerst/1b15ff4652a867391f03) no seu computador para poder enviar as suas alterações e poder receber as alterações feitas por outros. A maneira de instalar o git pode variar consoante o seu sistema operativo. Por isso consulte o link acima referido ou procure a documentação referente a como instalar o git no seu sistema operativo.
# Instalar o editor de texto Atom
Casa ainda não o tenhas feito deves instalar o [Atom](https://atom.io). O Atom é um editor de texto que tem integração com o git. Caso o teu sistema operativo não seja automaticamente detetado quando visitares o site [Atoms](https://atom.io) vê o link [Other platfroms](https://github.com/atom/atom/releases/latest). Para os utilizadores do Arch Linux, podem instalar o o git usando `pacman -S atom` ou outro gestor de pacotes à vossa escolha.
# Clonar o repositório
O Git foi criado tendo como objetivo a colaboração entre pessoas. Antes de mais precisas de descarregar uma cópia de todos os ficheiros do projeto (repositório git) para o teu computador. Todas as modificações são feitas localmente no teu computador (podes trabalhar offline). Quando achares que as alterações (novos tutoriais, traduções) estão completos podes decidir enviar/sincronizar (push) com o repositório que está alojado no servidor.
A maneira mais fácil de clonar um repositório é: abrir o terminal (linha de comandos), navegar até ao diretório/pasta para onde queres clonar/descarregar o repositório e correr o comando `git clone <url>`, onde está *<url>* deves colocar o endereço URL do repositório que queres clonar/descarregar. No nosso caso concreto é:
`git clone https://git.disroot.org/disroot/howto`
Uma vez que o repositório esteja colando para o teu computador irás ver uma pasta chamada `howto` que contém todos os ficheiros, que viste no teu browser de Internet quando visitaste o endereço do projeto/repositório.
Mais tarde podes mover essa pasta para qualquer outra parte do teu computador que prefiras.
# Pedir acesso ao repositório git
Para poderes submeter alterações no repositório git online do disroot, primeiro necessitas de pedir acesso ao repositório. Assim que os administradores de deem acesso, pode começar a submeter/enviar as tuas alterações para o repositório online (é possível começar a trabalhar localmente no teu computador sem ainda ter sido concedido acesso ao repositório online, as alterações que fizeres apenas serão feitas localmente nos ficheiros que estão no teu computador).
![](en/git-request_access.png)
# Agora o trabalho pode começar.
Agora podes abrir o Atom e carregar em `Open Folder` e escolher o directório/pasta que clonaste (*howto*). O interface do Atom é simples e fácil de entender. A barra esquerda é a lista de ficheiros e pastas do projeto, a janela do meio é onde editas os ficheiros e barra de baixo indica o número de ficheiros alterados and bottom bar indicates number of changed, o ramo em que estás e tem os botões para rápidamente sincronizar e actualizar com o repositório git online.
![](en/atom1.png)
Com o Atom podes abrir e trabalhar em múltiplos ficheiros em múltiplas tabs ou dividir o ecrã.
Ficheiros alterados, cujas alterações não foram guardadas têm uma bolinha azul (dependendo do aspeto gráfico que escolheste para o Atom, claro).
Para guardar as tuas alterações usa o menu *File* o as teclas *Ctrl+s*.
**Mas** antes de começares a trabalhar nos ficheiros precisas de criar o teu próprio: **branch** (ramo)
# Branches/Ramos
Branches/Ramos são basicamente os teus espaços de trabalho privado, cópia privada. Cada projeto git tem o seu próprio ramo/branch **master**. O branch Master é o cópia principal de *produção* do projeto. Este branch é automáticamente sincronizado com o website [howto.distoot.org](https://howto.disroot.org), por isso qualquer alteração feita neste branch/ramo é automaticamente visível no website. E é por isso que o envio de alterações para o ramo **master** são restringidas, apenas os administradores do disroot, as podem realizar
Para poderes começar a trabalhar cria o teu próprio ramo/branch. Isto básicamente irá criar uma cópia, na qual podes trabalhar, do ramo **master**.
![](en/atom-branch1.gif)
Mudar de ramo também pode ser feita a parti do mesmo menu. O ramo a partir do qual estás a trabalhar é visivél a partir da barra de baixo do ecrã.
![](en/atom-branch2.gif)
Uma vez que o ramo esteja criado e que tenhas mudado para esse ramo, podes crias novos ficheiros, alterar os ficheros atuais, etc.
# Enviar as tuas alterações (fazer commit)
Ok, então estás a trabalhar no teu computador e a criar novos tutorais ou a traduzir tutoriais já existentes. Para além de gravar as tuas alterações no teu computador, tu também podes/deves enviar (fazer commit) das tuas alterações. Fazer commit das alterações sincroniza o trabalho que fizeste no teu ramo/branch com o servidor git. Se o ramo ainda não existe no servidor, ele será criado automáticamente quando fazes commit e todas as tuas alterações e ficheiros novos serão enviados para o servidor. A partir desse momento, em que os teus ficheiros novos e alterações foram sincronizadas online, podes trabalhar nos teus ficheiros a partir de computadores diferentes, locais diferentes e outras pessoas que estejam a trabalhar no projeto podem participar trabalhar nos ficheiros que sincronizaste e ajudar a trabalhar no ramo que criaste.
Para fazer commit das tuas alterações precisas de:
- certificar-te que guardaste todos os ficheiros
- stage all the files you've modified and want to commit to the server
- Escrever uma mensagem de commit, uma nota breve sobre o que foi alterado (não demasiado longa)
- Carregar no botão commit
![]()
Uma vez que tenha sido feito o commit dos ficheiros é altura de fazer *push* (enviar) para o servidor:
- Abra a janela popup de push/pull
- Carrega em push
# Merge request
Quando achares que o teu trabalho está acabado e pronto a ser publicado no website, é altura de enviar as tuas alterações (merge request) para o ramo/branch principal do projeto, o ramo **master**.
- Primeiro, obviamente, tens que certificar-te que fizeste commit de todas as alterações que fizeste.
- Faz login em [https://git.disroot.org](https://git.disroot.org)
- se fizeste *push* de qualquer alterações para o servidor no teu ramo então verás no canto superior direito o botão **"Create Merge Request"**
- Isto irá criar um formulário de "merge".
- Cria um título
- Adiciona uma descrição
- Certifica-te que o **source branch** (o ramo a partir do qual fazes o pedido de merge) é o ramo que queres em que tu estiveste a trabalhar.
- Certifica-te que o **target branch** é aquele com o qual queres fazer merge (normalmente é o master branch)
![](en/git-merge_request.gif)
Assim que criares o merge request, ele será revisto pelos administradores do disroot. Os administradores podem aprovar o teu pedido de commit o que significa que as tuas alterações serão inseridas no ramo master e portanto visíveis no website, ou então podem pedir para tu corrigires alguma coisa. Assim que todas as correções estiverem feitas e os *"governantes"* do disroot estiverem satisfeitos o teu pedido de merge será integrado no ramo master.
# Pulling (descarregar alterações do servidor)
Se queres manter a cópia do ramo **master** que tens no guardada no teu computador atualizada, precisas de fazer um "pull request" das alterações que foram feitas no servidor (por outras pessoas). Cada vez que alguém tem o seu merge request aprovado, todas as outras pessoas devem fazer um pull request para os seus ramos. Deste modo podes ver o que há de novo e que alterações foram feitas recentemente (por outras pessoas). No ramo master branch mantemos um ficheiro chamado "CHANGELOG" (registo de alterações) onde anotamos todas as alterações significativas nos tutoriais.
Os "pull request" devem ser feitos regularmente (especialmente antes de começar a trabalhar num ramo novo).
- abre a janela popup de push / pull
- Carrega em **pull**
# Algum vocabulário e explicação
**git repository/repositório git** - Diretório (pasta) que consiste em todos os ficheiros que pertencem ao projeto

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 98 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 259 KiB

View File

Before

Width:  |  Height:  |  Size: 443 KiB

After

Width:  |  Height:  |  Size: 443 KiB

View File

Before

Width:  |  Height:  |  Size: 45 KiB

After

Width:  |  Height:  |  Size: 45 KiB

View File

Before

Width:  |  Height:  |  Size: 51 KiB

After

Width:  |  Height:  |  Size: 51 KiB

View File

Before

Width:  |  Height:  |  Size: 287 KiB

After

Width:  |  Height:  |  Size: 287 KiB

View File

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

View File

Before

Width:  |  Height:  |  Size: 98 KiB

After

Width:  |  Height:  |  Size: 98 KiB

View File

Before

Width:  |  Height:  |  Size: 537 KiB

After

Width:  |  Height:  |  Size: 537 KiB

View File

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 38 KiB

View File

Before

Width:  |  Height:  |  Size: 531 KiB

After

Width:  |  Height:  |  Size: 531 KiB

View File

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

Before

Width:  |  Height:  |  Size: 6.5 KiB

After

Width:  |  Height:  |  Size: 6.5 KiB

View File

Before

Width:  |  Height:  |  Size: 8.1 KiB

After

Width:  |  Height:  |  Size: 8.1 KiB

View File

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 34 KiB

View File

@ -0,0 +1,44 @@
---
title: Procedures
published: true
visible: true
updated:
taxonomy:
category:
- docs
tags:
- contribute
- procedure
page-toc:
active: true
---
# Howto Procedures: What does it mean?
The possibility of writing a tutorial and making it accessible to everyone in their own languages is fundamental in order to encourage and promote not only the use of free/libre and open source software but also collective thoughts and actions. So coordinating the amount of information to be written and translated is an important task, therefore we developed a basic set of steps to follow to help us achieve this goal.
The procedure is rather simple:
1. We get a copy of the files we are going to work on;
2. we work locally on the files,
3. and once we have finished, we submit them.
Sounds pretty easy, doesn't it? Well, it really is. Of course, every step of the process has its own set of actions, which we will see later on, but that is it basically.
# What tools do we need?
We use three tools for our work: **Git**, **a text editor** and **Gitea**.
We choose **Git** for several reasons, the main one being our documents structure and code language. Even though there are many (and very good ones) translation tools which look more "user friendly", none of them fit our use case or have **Markdown** text format support out-of-the-box. In the best scenario, it will requires us to make massive modifications on the files in order to strip them down into several "text sections" or "strings". Another important reason is that **Git** allows us to keep track on the changes made on those files, making it easier to manage and collaborate on them. And one more reason is that **Gitea** (the code hosting software we use with **Git**) has a lot of useful features to organize and improve the work in one single place.
OK, let's check our tools:
1. **Git**: If you are a **GNU/Linux** user it is highly probable that you already have it installed (you can check in your software package manager or through the terminal with the command `which git`). If you are using **Microsoft Windows** or **Mac OS**, you can download it from [here](https://git-scm.com/downloads).
2. **A text editor**: Although there are many of them, we suggest you to use one with **Markdown** format support and **Git** integration. **Kate Editor**, **Atom Text Editor** and **VSCodium**, meet this criteria natively, and they are also Free/Libre and Open Source multiplatform software. But, **for practical reasons, we will only see how to work in Atom** (in the future we will include other tools).
**Atom Text Editor**: [Download](https://atom.io/) · [Source code](https://github.com/atom/atom)
3. **A Disroot Gitea account**: In order to be able to submit your work, you will need to register an account on our **Gitea** instance (**Disroot** credentials will not work) and request access to our repository.
[**Register a new account**](https://git.disroot.org/user/sign_up) on **Disroot's Gitea** instance.
Once you have these tools, it is time to set them up to start working.

View File

@ -0,0 +1,44 @@
---
title: Procedimientos
published: true
visible: true
updated:
taxonomy:
category:
- docs
tags:
- contribuir
- procedimiento
page-toc:
active: true
---
# Procedimientos Howto: ¿Qué significa?
La posibilidad de escribir un tutorial y hacerlo accesible para todxs en sus propios idiomas es fundamental no solo para fomentar y promover el uso de software libre y de código abierto sino también pensamientos y acciones colectivas. Así que coordinar la cantidad de información a ser escrita y traducida es una tarea importante, por lo tanto desarrollamos una serie básica de pasos a seguir para que nos ayude a lograrlo.
El procedimiento es bastante simple:
1. Obtenemos una copia de los archivos sobre los que vamos a trabajar;
2. trabajamos localmente en ellos,
3. y una vez que hemos terminado, los enviamos.
Suena bastante fácil, ¿no?. Bueno, realmente lo es. Por supuesto, cada paso del procedimiento tiene su propio conjunto de acciones, que veremos más adelante, pero es eso básicamente.
# ¿Qué herramientas necesitamos?
Usamos tres herramientas para nuestro trabajo: **Git**, **un editor de texto** y **Gitea**.
Elegimos **Git** por varias razones, la principal es la estructura y el lenguaje de código de nuestros documentos. Aunque hay muchas (y muy buenas) herramientas de traducción que parecen más "fáciles de usar", ninguna de ellas se ajusta a nuestro caso de uso o tienen soporte para el formato de texto **Markdown** por defecto. En el mejor de los escenarios, requeriría que hagamos modificaciones enormes sobre los archivos para poder desglosarlos en muchas "secciones de texto" o "cadenas". Otra razón importante es que **Git** nos permite mantener un registro de los cambios realizados sobre esos archivos, haciéndo más sencillo manejarlos y colaborar sobre ellos. Y una razón más es que **Gitea** (el software para hospedar código que usamos con **Git**) tiene un montón de funcionalidades muy útiles para organizar y mejorar el trabajo en un solo lugar.
Muy bien, repasemos nuestras herramientas:
1. **Git**: Si eres usuarix de **GNU/Linux** es altamente probable que ya lo tengas instalado (puedes chequearlo en tu gestor de software o a través de la terminal con el comando `which git`). Si estás usando **Microsoft Windows** o **Mac OS**, puedes descargarlo desde [aquí](https://git-scm.com/downloads).
2. **Un editor de texto**: Aunque hay muchos de ellos, sugerimos utilizar uno con soporte para el formato **Markdown** e integración con **Git**. Los editores **Kate**, **Atom** y **VSCodium**, cumplen con este criterio de forma nativa, y también son programas multiplataforma con licencias libres y de código abierto. Pero, **por razones prácticas, solo veremos cómo trabajar en Atom** (en el futuro incluiremos otras herramientas).
**Atom Text Editor**: [Descargar](https://atom.io/) · [Código fuente](https://github.com/atom/atom)
3. **Una cuenta de Disroot Gitea**: Para poder enviar tu trabajo, necesitarás registrar una cuenta en nuestra instancia de **Gitea** (las credenciales de **Disroot** no funcionarán) y solicitar acceso a nuestro repositorio.
[**Registrar una cuenta nueva**](https://git.disroot.org/user/sign_up) en la instancia **Gitea** de **Disroot**.
Una vez que tengas estas herramientas, es momento de configurarlas para comenzar a trabajar.

View File

@ -1,11 +1,11 @@
---
title: How-to Contribute: Git Basics
title: "Atom"
published: true
visible: false
visible: true
updated:
last_modified: "22 August 2019"
app: Git and Atom
app_version: 1.40
last_modified: "October 2021"
app: Git
app_version: 2.33.0
taxonomy:
category:
- docs
@ -16,53 +16,14 @@ page-toc:
active: true
---
# Git Basics
We'll not cover all the aspects of using git in this tutorial. There are lots of in-depth tutorials and books written about this tool and what we're aiming at is providing a short and easy way to contribute to tutorials and translations.
# Before starting the work
## Installing git
Since all the modifications will happen on your local machine, you need to [install git](https://gist.github.com/derhuerst/1b15ff4652a867391f03) to be able to send your changes as well as sync changes of others. Depending on your platform the ways to install git may vary so check the link above or refer to your platform specific documentation.
## Installing Atom editor
If you haven't yet, it's time to install [Atom](https://atom.io). **Atom** is a feature rich text editor with special git integration. If your Operating system is not automatically detected or listed when going to [Atom](https://atom.io) website, check [Other platforms](https://github.com/atom/atom/releases/latest). For all Arch users, you can simply install it using `pacman -S atom` or other package manager of your choice.
## Create an account on git instance
After installing **git** and **Atom**, you'll need an account on **Disroot** git instance. As of late we fortunately host our own **gitea** instance, but you'll have to register an account separately. Your **Disroot** account doesn't apply here. For a better assignment we suggest to use the same username as on **Disroot**.
To create an account just go to [https://git.disroot.org](https://git.disroot.org) and register.
## Preparing the workspace
Git is designed with collaboration in it's core. So, first thing we need to do is get a copy of all files within the project onto our local hard drive. This process is called "*cloning a repository*". All modifications are done on our local machine (most of the work is made offline). Once we've decided that the changes (new tutorial, translation) are finished we can sent/sync them back to the repository on the server (*push*).
### Cloning the **Howto Disroot** repository
To clone the repository just open a terminal, navigate to the directory you would like to clone the repository to, and run `git clone <url>` command, where *<url>* is basically the address of the repository you want to clone. In our case it would be:
`git clone https://git.disroot.org/disroot/howto`
Once the repository is copied to your hard drive you will see a `howto` directory that consists of all the files you could previously browse in your web browser when on our repository's url.
You can later move that directory to any place you want on your computer.
### Access to the repository
In order to be able to commit changes to **Disroot**'s git repository, you need to request access. This is done via [our git project page](https://git.disroot.org/disroot/howto)
![](en/git-request_access.png)
Once admins grant you the access, you can "*push*" your changes to the server.
!! ![](/home.icons/note.png)
!! NOTE: You can start working without access granted as all the changes happen on your local computer.
# Starting to work
Now you can start **Atom**.
Go to the File tab, select `Open Folder` and choose the directory you've just cloned (*howto*).
# Working with Atom
Now we can start **Atom**.
The interface of **Atom** is clean and easy to understand. The left sidebar is your project's navigation tree, the middle window is where you edit files and bottom bar indicates number of changed files, current branch, quick pull/push to git.
![](en/atom1.png)
![](en/atom_01.png)
Go to the File tab, select `Open Folder` and choose the directory you've just cloned (the `Howto` folder).
You can open and work on multiple files in tabs or as split screen side by side.
Unsaved files with local modifications are marked with a blue dot (depending on the theme you use of course).

View File

@ -0,0 +1,126 @@
---
title: "Atom"
published: true
visible: true
updated:
last_modified: "October 2021"
app: Git
app_version: 2.33.0
taxonomy:
category:
- docs
tags:
- contribute
- git
page-toc:
active: true
---
# Working with Atom
Now we can start **Atom**.
The interface of **Atom** is clean and easy to understand. The left sidebar is your project's navigation tree, the middle window is where you edit files and bottom bar indicates number of changed files, current branch, quick pull/push to git.
![](en/atom_01.png)
Go to the File tab, select `Open Folder` and choose the directory you've just cloned (the `Howto` folder).
You can open and work on multiple files in tabs or as split screen side by side.
Unsaved files with local modifications are marked with a blue dot (depending on the theme you use of course).
To save the file changes use the *File* menu or the *Ctrl+s* keyboard shortcut.
**Before** you start working on the files, you'll need to create your own **branch**.
## Creating branches
Branches are basically your own private workspaces.
Each git project has it's own **master** branch. Master branch is the main, *production* copy of the project. This branch is automatically synced with the website, so any change made to that branch are instantly visible on the website. That is also why adding any changes to the **master** branch is restricted only to the owners of the project.
In order to start working, create your own branch. This will basically make a clone of the **master** branch.
On the bottom-right corner of **Atom**, click on **master** (or any other branch name) and choose **New Branch**. Choose a name for your branch, something easy for other to know what you're working on, what your branch is about. For example if your planning to work on a nextcloud howto, call it "nextcloud_howto" or something similar.
Press **Enter** on your keybord when you're done.
![](en/atom-branch1.gif)
Now, you need to **publish** your new branch so that it is created on the server. **Atom** will ask your credential. Use the one created for our git instance.
![](en/publish.png)
Switching between branches can also be done from that menu. Current working branch is visible on the bottom bar. Click on it: other local branches will appear.
![](en/atom-branch2.gif)
Once the branch is created and published, and you have change the current work on this new branch, you can create new files, modify existing ones, etc.
## Committing changes
Now you're working on your computer creating new tutorials or translating existing ones. Apart from saving changes to your laptop, you can/should also **commit** your changes.
Committing changes syncs the work you've done on your branch to the git server. So a commit is a set of files created or modified. If the branch doesn't exist on repository, it will be created and all your modifications and new files will be uploaded to the server. In that case you can work on your files on multiple machines, or other people can take over, help working on your branch.
To commit your changes need to:
- Make sure all files are saved
- **Stage all** the files you've modified and want to commit to the server
- Write a **commit message** (a short and very specific summary of what has been changed)
- Hit **commit** button
![](en/atom-commit.gif)
Once the files are committed, it's time to **push** (send) them to the server:
- Open Push/Pull popup window
- Press Push
![](en/atom-push.gif)
## Merge request
Once you think your work is finished and ready to be published on the website, it's time to merge it to the **master branch**.
![](en/note.png) <br>**NOTE!!!**
While you are working on your branch, other users possibly commit and merge their own changes, esp. if you are working on existing files. If those changes from the other users have already been merged to the **master branch**, the version of the files you changed may no longer be the actual ones and therefore the changes from other users may not be included in your files. In that state, if you want to let your changes be merged to the **master branch**, this process may be very chaotic.
![](en/git-merge_chaos.gif)
Luckily git is able to compare versions and to insert your changes into the updated file versions. To trigger this, you need to update your branch **before** you **Create** a **Merge Request**. By doing this you will spare the admins and yourself a lot of needless work:
- First of all is to make sure all the changes are committed
- Open Terminal (Linux)
- Switch to **Master Branch**: ***git checkout master***
- Update **Master Branch**: ***git pull***
- Switch to working branch: ***git checkout <Branch_Name>***
- Update your working branch from **Master Branch**: ***git rebase master***
- Verify the changes and commit the changes to the Server
Now you can start with the final steps of merging your files to the **Master Branch**:
- First of all is to make sure all the changes are committed.
- Login to [https://git.disroot.org](https://git.disroot.org)
- If you pushed any changes to the server on your branch, in the top right you'll see a **"Create Merge Request"** button that will open the merge request form.
- Add a title
- Add a descripton
- Make sure the **source branch** is the one you want to merge from (the one you've been working on)
- Make sure the **target branch** is the one you want to merge to (usually Master branch
- Checkin the box **Delete source branch when merge request is accepted.** is also a good thing to do if you're completely done working on your branch.
![](en/git-merge_request.gif)
Once you've created a merge request, it will be reviewed by **Disroot** admins and, if it's all right, they can approve your commit then. This means your changes will be merged with the master branch and therefore visible on the website.
If there's any issue, admins could request you to correct something. Once all the corrections are made and the documentation meets the **Disroot** guidelines, your merge request will be pulled to the master.
## Pulling changes from the server
If you want to keep the local **master** branch and your local branch up to date, you'll need to pull changes from the server.
Each time someones gets his merge request pulled in to the master, everyone should also pull the changes to their local branches. Then you can easily see what's new and what has changed recently. On the master branch we keep a file called **CHANGELOG** where we note all significant changes to Howtos.
Pulling should be done on regular basis (specially before you start working on new branch).
- Open Push/Pull popup window
- Press **Pull**
![](en/atom-pull.gif)
## Template to use for how-to's
You can copy the content [here](en/template.txt) and create your how-to file.

View File

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

View File

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 37 KiB

View File

Before

Width:  |  Height:  |  Size: 98 KiB

After

Width:  |  Height:  |  Size: 98 KiB

View File

Before

Width:  |  Height:  |  Size: 45 KiB

After

Width:  |  Height:  |  Size: 45 KiB

View File

Before

Width:  |  Height:  |  Size: 8.1 KiB

After

Width:  |  Height:  |  Size: 8.1 KiB

View File

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

View File

Before

Width:  |  Height:  |  Size: 287 KiB

After

Width:  |  Height:  |  Size: 287 KiB

View File

Before

Width:  |  Height:  |  Size: 2.6 MiB

After

Width:  |  Height:  |  Size: 2.6 MiB

View File

Before

Width:  |  Height:  |  Size: 537 KiB

After

Width:  |  Height:  |  Size: 537 KiB

View File

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 38 KiB

View File

Before

Width:  |  Height:  |  Size: 531 KiB

After

Width:  |  Height:  |  Size: 531 KiB

View File

Before

Width:  |  Height:  |  Size: 259 KiB

After

Width:  |  Height:  |  Size: 259 KiB

View File

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

Before

Width:  |  Height:  |  Size: 6.5 KiB

After

Width:  |  Height:  |  Size: 6.5 KiB

View File

@ -0,0 +1,25 @@
---
title: "Working on the files"
published: true
visible: true
indexed: true
updated:
taxonomy:
category:
- docs
tags:
- contribute
- git
- editors
- atom
- kate
page-toc:
active: true
---
# Editors
The easiest way to work and edit the **Howto** files is through a text editor with git integrated.
Although there are several editors we suggest you to use either **Atom Text Editor** or **Kate Editor**, they are both multiplatform, easy to use and Free/Libre & Open Source software.
1. [Working with Atom](atom)
2. [Working with Kate](kate)

View File

@ -0,0 +1,17 @@
---
title: "Kate"
published: true
visible: true
indexed: true
updated:
taxonomy:
category:
- docs
tags:
- contribute
page-toc:
active: true
---
**Atom Text Editor** · **Kate Editor**

View File

@ -0,0 +1,86 @@
---
title: "Git"
published: true
visible: true
indexed: true
updated:
taxonomy:
category:
- docs
tags:
- contribute
- git
- settings
page-toc:
active: true
---
# Git?
Yes, **Git**. It is a control version system, a software that allows us to track modifications to files, keeping a record of all the changes made, so if we need to revert to a specific version we can do it in a relatively easy way. It is also a powerful collaboration tool, since it allows many people working on the same files of a project.
To learn the basics of Git and to work with it can be not only very useful but also a fun experience.
# Scope of this tutorial
Our use of Git doesn't require a high level of technical knowledge, anyone can learn the set of basic commands needed. And, to make it even easier, there are several text editors with Git integrated to reduce the interaction with the terminal to the minimum.<br>
So the aim of the following tutorials is to introduce you to the basics of Git, the main tool we use to manage the **Howto** project files. Therefore, we will not cover all the aspects of its usage, only some basic concepts and commands.
If you get more interested about Git, there are lots of in-depth tutorials and documentation written about it that you can easily find on the internet.
# What does Git do?: Basic concepts
![](en/git.png)
When you read a **Disroot** tutorial, what you are seeing is the representation in your browser of a piece of code, in our case, a text file written in a formatting syntax called **Markdown**. The entire code of this site and its content is hosted in a **Git repository**, a folder containing all the project files and the changes history of each and every one of those files (what has changed, who has changed it and why it has changed).
In this repository (or repo) there is a **main branch** (or "master branch"), which is the default project line of development and from which different other branches can be created without compromising it.
Think of a tree: the "main branch" would be the trunk from which different branches "grow and develop". Once they complete their cycle, they can be integrated into the "trunk" or even "fall" from it without affecting it.
So, the main branch is the one that contains the code we see online (or "in production") and the branches we create are the ones that contain our work.
![](en/git_branches.png)
This way, when a tutorial needs to be modified (e.g., because some software has been updated, typos were found in a document, there is information to be added/removed, etc) or translated, what we do is copy the remote repository into our machine so we can work locally on the files. This procedure is called **cloning** and once it is done, all modifications and Git operations are managed from our local repository.
## Cloning the **Howto Disroot** repository
As we mentioned before, the process of getting a copy of all the files within the project is called "**to clone**" a repository. And once we have cloned it, all modifications will be done on this copy in our local machine (most of the work is done offline).
To clone the repository we just open a terminal, navigate to the directory we would like to clone the repository to, and run the `git clone` command, that is, we "tell" git through this command to "download" it. The command is followed by the **url address** of the repo we want to clone. In our case it would be:
`git clone https://git.disroot.org/Disroot/Howto`
If we want to translate a page from the **Disroot Website** then we type:
`git clone https://git.disroot.org/Disroot/Website`
The process will then begin and in a few minutes, depending on our internet connection, we will have the repository "cloned" on our machine.
![](en/cloning.png)
Once this process has been completed, we will see a `Howto` (or a `Website`) directory containing all the files of the site. We can later move that directory to any place we want on our computer.
Now, before we really get to work, let's setup our identity so we can move forward without distractions.
## Setting your identity
In order to be able to send our work from our machine to the remote repository, it is necessary to setup our username and email. This information is used by Git to "sign" the commits (the "snapshots" of our modifications, we will see this later on).
1. We open a terminal in (or navigate to) the directory/folder where we have the cloned repository. In our example, we will do it in a directory called "Disroot" in the home folder.<br>
2. Type and complete with your information the following commands:<br>
`git config --global user.email` **user@email** `<- here goes your email address`<br>
`git config --global user.name` **"Username"** `<- and here your username`
We will not need to enter this information again.
## Requesting access to the Disroot repository
The faster and recommended way to request access is via our **Howto Chat room** at `howto@chat.disroot.org`. You can also send us an email to `howto@disroot.org`.
Once admins grant you the access, you will be able to "*push*" (send) your changes to the server.
!! **NOTE**<br>
!! You could start working without access granted as all the changes happen on your local computer, and requesting it later.
Ok. Now we finally can start to work.

View File

@ -0,0 +1,83 @@
---
title: "Git"
published: true
visible: true
indexed: true
updated:
taxonomy:
category:
- docs
tags:
- contribute
- git
- settings
page-toc:
active: true
---
# Git?
Yes, **Git**. It is a control version system, a software that allows you to track modifications to files, keeping a record of all the changes made, so if you need to revert to a specific version you can do it in a relatively easy way. It is also a powerful collaboration tool, since it allows many people working on the same files of a project.
To learn the basics of Git and to work with it can be not only a very useful but also a fun experience.
# Scope of this tutorial
Our use of Git doesn't require a high level of technical knowledge, anyone can learn the set of basic commands needed. And, to make it even easier, there are several text editors with Git integrated to reduce the interaction with the terminal to the minimum.<br>
So the aim of the following tutorial is to introduce you to the basics of Git, the main tool we use to manage the **Howto** project files. Therefore, we will not cover all the aspects of its usage, only some basic concepts and commands.
If you get more interested about Git, there are lots of in-depth tutorials and documentation written about it that you can easily find on the internet.
# What does Git do?: Basic concepts
![](en/git.png)
When you read a **Disroot** tutorial, what you are seeing is the representation in your browser of a piece of code, in our case, a text file written in a formatting syntax called **Markdown**. The entire code of this site and its content is hosted in a **git repository**, a folder containing all the project files and the changes history of each and every one of those files (what has changed, who has changed it and why it has changed).
In this repository (or repo) there is a **main branch** (or "master branch"), the default project folder where is the "final" code, the one is online or in "production".
When a tutorial needs to be modified (e.g., some software has been updated, typos were found in a document, there is information to be added/removed, etc) or translated what we do is copy the remote repository into our machine, this way we can work locally on the files. This procedure is called **cloning** and once it is done, all Git operations are managed from our local repository.
Next step will be to create a new **branch**, a fork of the main branch on which we can make modifications without compromising the original code.
![](en/git_branches.png)
But before we really get to work, let's setup your **Gitea** account so we can move forward without distractions.
## Setting your Gitea account
In order to be able to send your work from your machine to the remote repository, it is necessary to setup your **Gitea** username and email and request access to it.
1. Open a terminal and start Git<br>
`git init`<br>
2. Type and complete with your information the following commands:<br>
`git config --global user.email` **user@email** `<- here goes your email address`<br>
`git config --global user.name` **"User Name"** `<- and here your username`
You will not need to enter this information again.
The faster and recommended way to request access is via our **Howto Chat room** at `howto@chat.disroot.org`. You can also send us an email to `howto@disroot.org`.
Once admins grant you the access, you will be able to "*push*" your changes to the server.
!! **NOTE**<br>
!! You can start working without access granted as all the changes happen on your local computer.
## Cloning the **Howto Disroot** repository
Ok, now we need to get a copy of all files within the project onto our local hard drive. This process is called "**to clone**" a repository. And once we have the clone (the copy) of the repo, all modifications will be done on this copy in our local machine (most of the work is done offline).<br>
When we have decided that the changes (new tutorial, translation) are finished we can sent/sync them back to the repository on the server, this action is called **push**.
To clone the repository just open a terminal, navigate to the directory you would like to clone the repository to, and run `git clone <url>` command, where **url** is the address of the repository you want to clone. In our case it would be:
`git clone https://git.disroot.org/disroot/Howto`
If you want to translate a page from the **Disroot Website** then type:
`git clone https://git.disroot.org/disroot/Website`
Once the repository is copied to your hard drive you will see a `Howto` (or a `Website`) directory that content all the files of the site.
You can later move that directory to any place you want on your computer.
Ok. Now we finally can start to work.

Binary file not shown.

After

Width:  |  Height:  |  Size: 107 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 124 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 104 KiB

View File

@ -1,19 +0,0 @@
---
title: How-to: Mitwirken via Pads
published: false
visible: true
updated:
taxonomy:
category:
- docs
tags:
- contribute
- mitwirken
page-toc:
active: false
---
# Ein gutes Beispiel
Hier haben wir ein gutes Beispiel für die Arbeit, die noch nötig ist. Leider hat sich noch niemand bereit gefunden, ein How-to für diesen Bereich zu schreiben. Vielleicht möchtest Du dies ja zu Deinem ersten Projekt machen?!

View File

@ -1,18 +0,0 @@
---
title: How-to Contribute: Pads
published: false
visible: true
updated:
taxonomy:
category:
- docs
tags:
- contribute
page-toc:
active: false
---
# Open Task
This is a good example for the work still to do. Until now, no one was found to write this Tutorial. Maybe you want to make it your first project?

View File

@ -1,9 +0,0 @@
---
title: Cómo contribuir: Pads
published: true
visible: true
taxonomy:
category:
- docs
---
ToDo

View File

@ -1,19 +0,0 @@
---
title: Como contribuir: Pads
published: false
visible: true
updated:
taxonomy:
category:
- docs
tags:
- contribute
page-toc:
active: false
---
# Por fazer
Isto é um bom exemplo do trabalho que ainda falta fazer. Até agora ainda não se encontrou ninguém para escrever este documento.<br>
Talvez escrever a documentação para esta página possa ser o teu primeiro projeto? :)

View File

@ -1,20 +0,0 @@
---
title: How-to: Mitwirken via Email
published: true
visible: false
updated:
taxonomy:
category:
- docs
tags:
- contribute
- email
- mitwirken
page-toc:
active: false
---
# Ein gutes Beispiel
Hier haben wir ein gutes Beispiel für die Arbeit, die noch nötig ist. Leider hat sich noch niemand bereit gefunden, ein How-to für diesen Bereich zu schreiben. Vielleicht möchtest Du dies ja zu Deinem ersten Projekt machen?!

View File

@ -1,19 +0,0 @@
---
title: How-to Contribute: Email
published: true
visible: false
updated:
taxonomy:
category:
- docs
tags:
- contribute
- email
page-toc:
active: false
---
# Open Task
This is a good example for the work still to do. Until now, no one was found to write this Tutorial. Maybe you want to make it your first project?

View File

@ -1,9 +0,0 @@
---
title: Cómo contribuir: Correo electrónico
published: true
visible: true
taxonomy:
category:
- docs
---
ToDo

View File

@ -1,20 +0,0 @@
---
title: Como contribuir: Email
published: true
visible: false
updated:
taxonomy:
category:
- docs
tags:
- contribute
- email
page-toc:
active: false
---
# Por fazer
Isto é um bom exemplo do trabalho que ainda falta fazer. Até agora ainda não se encontrou ninguém para escrever este documento.<br>
Talvez escrever a documentação para esta página possa ser o teu primeiro projeto? :)

View File

Before

Width:  |  Height:  |  Size: 191 KiB

After

Width:  |  Height:  |  Size: 191 KiB

View File

Before

Width:  |  Height:  |  Size: 127 KiB

After

Width:  |  Height:  |  Size: 127 KiB

View File

Before

Width:  |  Height:  |  Size: 80 KiB

After

Width:  |  Height:  |  Size: 80 KiB

View File

Before

Width:  |  Height:  |  Size: 191 KiB

After

Width:  |  Height:  |  Size: 191 KiB

View File

Before

Width:  |  Height:  |  Size: 127 KiB

After

Width:  |  Height:  |  Size: 127 KiB

View File

Before

Width:  |  Height:  |  Size: 80 KiB

After

Width:  |  Height:  |  Size: 80 KiB

View File

@ -1,21 +0,0 @@
---
title: How-to: Mitwirken via Forum
published: false
visible: true
updated:
last_modified: "July 2019"
taxonomy:
category:
- docs
tags:
- contribute
- forum
- mitwirken
page-toc:
active: false
---
# Ein gutes Beispiel
Hier haben wir ein gutes Beispiel für die Arbeit, die noch nötig ist. Leider hat sich noch niemand bereit gefunden, ein How-to für diesen Bereich zu schreiben. Vielleicht möchtest Du dies ja zu Deinem ersten Projekt machen?!

View File

@ -1,20 +0,0 @@
---
title: How-to Contribute: Forum
published: false
visible: true
updated:
last_modified: "July 2019"
taxonomy:
category:
- docs
tags:
- contribute
- forum
page-toc:
active: false
---
# Open Task
This is a good example for the work still to do. Until now, no one was found to write this Tutorial. Maybe you want to make it your first project?

View File

@ -1,9 +0,0 @@
---
title: Cómo contribuir: Foro
published: true
visible: true
taxonomy:
category:
- docs
---
ToDo

View File

@ -1,21 +0,0 @@
---
title: Como contribuir: Forum
published: false
visible: true
updated:
last_modified: "July 2019"
taxonomy:
category:
- docs
tags:
- contribute
- forum
page-toc:
active: false
---
# Por fazer
Isto é um bom exemplo do trabalho que ainda falta fazer. Até agora ainda não se encontrou ninguém para escrever este documento.<br>
Talvez escrever a documentação para esta página possa ser o teu primeiro projeto? :)

View File

@ -1,22 +0,0 @@
---
title: How-to: Mitwirken via XMPP
published: false
visible: true
updated:
last_modified: "July 2019"
taxonomy:
category:
- docs
tags:
- contribute
- xmpp
- chat
- mitwirken
page-toc:
active: false
---
# Ein gutes Beispiel
Hier haben wir ein gutes Beispiel für die Arbeit, die noch nötig ist. Leider hat sich noch niemand bereit gefunden, ein How-to für diesen Bereich zu schreiben. Vielleicht möchtest Du dies ja zu Deinem ersten Projekt machen?!

View File

@ -1,21 +0,0 @@
---
title: How-to Contribute: XMPP
published: false
visible: true
updated:
last_modified: "July 2019"
taxonomy:
category:
- docs
tags:
- contribute
- xmpp
- chat
page-toc:
active: false
---
# Open Task
This is a good example for the work still to do. Until now, no one was found to write this Tutorial. Maybe you want to make it your first project?

View File

@ -1,9 +0,0 @@
---
title: Cómo contribuir: XMPP
published: true
visible: true
taxonomy:
category:
- docs
---
ToDo

View File

@ -1,22 +0,0 @@
---
title: Como contribuir: XMPP
published: false
visible: true
updated:
last_modified: "July 2019"
taxonomy:
category:
- docs
tags:
- contribute
- xmpp
- chat
page-toc:
active: false
---
# Por fazer
Isto é um bom exemplo do trabalho que ainda falta fazer. Até agora ainda não se encontrou ninguém para escrever este documento.<br>
Talvez escrever a documentação para esta página possa ser o teu primeiro projeto? :)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 287 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 537 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 531 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.5 KiB

Some files were not shown because too many files have changed in this diff Show More