Pārlūkot izejas kodu

Finished first full version.

Kristian Schultz 4 gadi atpakaļ
vecāks
revīzija
8843088374

BIN
images/keys/trash.png


+ 2 - 0
src/config.tex

@@ -96,6 +96,7 @@
 % Macros und Umgebungen
 % ===================================================================
 \definecolor{grey}{gray}{0.5}
+\definecolor{darkgreen}{rgb}{0.0,0.6,0.0}
 \definecolor{lightgrey}{gray}{0.95}
 
 \newcommand{\badvar}[1]{\texttt{\color{red} #1}}
@@ -105,6 +106,7 @@
 \newcommand{\bobOnEarth}[2]{\textcolor{gray}{[bob@earth {#1}] (#2)\$}}
 \newcommand{\home}{{\~{}}}
 \newcommand{\projectDir}{{\~{}/myProject}}
+\newcommand{\placeholder}[1]{{\tt\bf\color{darkgreen} #1}}
 
 \newcommand{\q}[1]{\glqq{}{#1}\grqq{}}
 

+ 12 - 9
src/content.tex

@@ -6,7 +6,8 @@
 
 \begin{center}
 \Huge GitLab HowTo
-\\\small Uni-Rostock 05.2021
+
+\small Uni-Rostock 05.2021
 \end{center}
 %\maketitle
 
@@ -15,14 +16,16 @@
 \setcounter{page}{1}
 \tableofcontents
 
-
-\include{src/faq/login}
-\include{src/faq/keys}
-\include{src/faq/newProject}
-\include{src/faq/cloneProject}
-\include{src/faq/addThingsToProject}
-\include{src/faq/sendProjectToServer}
-\include{src/faq/doNotStore}
+\newpage
+\input{src/faq/login}
+\newpage
+\input{src/faq/keys}
+\input{src/faq/newProject}
+\newpage
+\input{src/faq/cloneProject}
+\newpage
+\input{src/faq/addThingsToProject}
+\input{src/faq/doNotStore}
 
 
 \bibliographystyle{plain}

+ 155 - 33
src/faq/addThingsToProject.tex

@@ -2,32 +2,120 @@
 
 \subsection{Workflow}
 
-\begin{DE}
-Beim Bearbeiten von Daten in einem GIT-Repository wird in den meisten F\"allen ein Workflow wie der hier Vorgestellte Workflow verwendet.
-\end{DE}
-\begin{EN}
-During the work with a GIT repository usualy one follows a workflow like this.
-\end{EN}
+\de{Beim Bearbeiten von Daten in einem GIT-Repository wird in den meisten Fällen ein Workflow wie der hier Vorgestellte Workflow verwendet.
+}\en{During the work with a GIT repository usually one follows a workflow like this.}
 
 \begin{enumerate}
-\item \de{Die aktuellsten \"Anderungen vom Server holen.}\en{Load the newest changes from server.} \hfill \var{pull}
-\item \de{Falls notwendig: Den aktuellen Arbeitszweig wechseln oder einen neuen anlegen.}\en{If needed: change or crate a branch.} \hfill \var{checkout} / \var{branch}
-\item \de{Dateien hinzuf\"ugen, \"andern oder l\"oschen.}\en{Add, change or remove files.} \hfill \var{add} / \var{remove}
-\item \de{\"Anderungen mit einem sinnvollen Kommentar comitten.}\en{Commit changes: Add a meaningfull comment.} \hfill \var{commit}
-\item \de{Neueste Comits zum Servre senden.}\en{Send newest comits to server.} \hfill \var{push}
+\item
+   \de{Die aktuellsten Änderungen vom Server holen.
+   }\en{Load the newest changes from server.}
+   \hfill \var{pull}
+\item
+   \de{Falls notwendig: Den aktuellen Arbeitszweig wechseln oder einen neuen anlegen.
+   }\en{If needed: change or crate a branch.}
+   \hfill \var{checkout} / \var{branch}
+\item
+   \de{Dateien hinzufügen, ändern oder löschen.
+   }\en{Add, change or remove files.}
+   \hfill \var{add} / \var{remove}
+\item
+   \de{Änderungen mit einem sinnvollen Kommentar committen.
+   }\en{Commit changes: Add a meaningfull comment.}
+   \hfill \var{commit}
+\item
+   \de{Neueste Commits zum Server senden.
+   }\en{Send newest commits to server.}
+   \hfill \var{push}
 \end{enumerate}
 
 
-\subsection{\var{pull}}
+
+\subsection{\de{Änderungen untersuchen}\en{Inspecting changes}}
+
+\begin{itemize}
+\item
+   \codeline{git status}
+   \de{Zeigt die lokalen Änderungen zum letzten Committeten Stand im aktuellen Arbeitszweig.
+   }\en{Shows the local changes compared to the newest commit in the current branch.}
+
+   \tExample{}: \\{}
+   \begin{Code}
+\bobOnEarth{\projectDir}{master} git status
+\color{gray}
+\\{}On branch master
+\\{}Your branch is up to date with \'{}origin/master\'{}.
+\\{}
+\\{}Changes not staged for commit:
+\\{}\mbox{}\hspace{1em}(use \"{}git add <file>...\"{} to update what will be committed)
+\\{}\mbox{}\hspace{1em}(use \"{}git restore <file>...\"{} to discard changes in working directory)
+\\{}\mbox{}\hspace{4em}modified:   main.c
+\\{}
+\\{}no changes added to commit (use \"{}git add\"{} and/or \"{}git commit -a\"{})
+   \end{Code}
+
+\item
+   \codeline{git log}
+   \de{Zeigt eine Liste mit den Commits.
+   }\en{Shows a list with the commits.}
+
+   \tExample{}:\\{}
+   \begin{Code}
+\bobOnEarth{\projectDir}{master} git log
+\color{gray}
+\\{}commit 1c5e59568e86377b620614f9e48250b4181fe9ab
+\\{}Author: MySelf <my-self@my-server.de>
+\\{}Date:   Tue May 4 17:10:13 2021 +0200
+\\{}
+\\{}\mbox{}\hspace{4em}Added Ackermann function.
+\\{}
+\\{}commit 899efba3143f3c24fa9168c803f2caf5d4fe3974
+\\{}Author: MySelf <my-self@my-server.de>
+\\{}Date:   Tue May 4 13:13:46 2021 +0200
+\\{}
+\\{}\mbox{}\hspace{4em}First commit.
+   \end{Code}
+\end{itemize}
+
+
+\pagebreak
+\subsection{\de{Arbeitsverzeichnis aktualisieren}\en{Update the working directory.}}
 \index{GIT!pull}
 
-\begin{DE}
-   Mit \code{git pull} k\"onnen die aktuellsten \"Anderungen vom Server geladen werden.
-   Diese werden auf das aktuelle Arbeitsverzeichnis angewendet.
-\end{DE}
-\begin{EN}
-   With \code{git pull} you may load the newes changes from server to your local woring directory.
-\end{EN}
+\begin{itemize}
+\item 
+   \codeline{git pull}
+
+   \de{Lädt den aktuellsten Stand des Repositories vom Server.
+   }\en{Loads the newest version of the repository from server.}
+
+\item
+   \codeline{git checkout \placeholder{NAME}}
+
+   \de{Aktualisiert die lokale Arbeitskopie des Repository entsprechende des Wertes von \var{NAME}.
+   }\en{Updates your working copy according to \placeholder{NAME}.}
+
+   \begin{itemize}
+   \item
+      \de{Falls \placeholder{NAME} eine der Dateien im Repository ist, dann wird diese Datei auf den Stand des letzten Commits zurück gesetzt.
+      }\en{If \placeholder{NAME} is a name of a file in the repository, then this file will be replaced by the version in the newest commit.}
+
+   \item 
+      \de{Falls \placeholder{NAME} die ID eines Commits ist, dann werden alle Dateien durch ihre Versionen in diesen Commit ersetzt.
+      }\en{If \placeholder{NAME} is the ID of a commit, then all files will be replaced by their version in this commit.}
+
+      \de{Im Beispiel von \var{git log} von oben:
+      }\en{In the example from \var{git log} from above:}\\{}
+      \codeline{git checkout 899efba3143f3c24fa9168c803f2caf5d4fe3974}
+      
+      \de{Kehrt zum Stand des Commits mit dem Titel \var{First commit.} zurück.
+      }\en{Returns to the state of the commit with the title \var{First commit.}}
+
+   \item \de{Falls \var{NAME} der Name eines Arbeitszweiges ist, dann werden alle Dateien durch ihre Version aus diesem Arbeitszweig ersetzt.
+      Alle weiteren Commits werden zu diesem Arbeitszweig hinzugefügt.
+   }\en{If \var{NAME} is a name of a branch, then all files will be replaced by their version in this branch.
+      All following commits will be added to this branch.}
+   \end{itemize}
+\end{itemize}
 
 
 \subsection{\de{Arbeitszweig\index{GIT!Arbeitszweig}}\en{Working branch}}
@@ -35,47 +123,53 @@ During the work with a GIT repository usualy one follows a workflow like this.
 \index{GIT!checkout}
 
 \begin{DE}
-   Arbeitszweige sollten immer dann angelegt werden, wenn Sie vorhaben neue Dinge Ihrem Projekt hinzuzufuegen oder Gr\"o\"sere \"Anderungen vorzunehmen. Wenn sie Ihre \"Anderungen durchgefuehrt und erfolgreich getestet haben, k\"onnen Sie den Arbeitszweig wirder mit dem Hauptzweig vereinigen.
+   Arbeitszweige sollten immer dann angelegt werden, wenn Sie vorhaben neue Dinge Ihrem Projekt hinzuzufügen oder Größere Änderungen vorzunehmen.
+   Wenn Sie Ihre Änderungen durchgeführt und erfolgreich getestet haben, können Sie den Arbeitszweig wider mit dem Hauptzweig vereinigen.
 \end{DE}
 \begin{EN}
+   You should use branches, if you develop a new feature or plan to do big changes.
+   If you are done with your changes and tested it successfully, you may merge it with your master branch.
 \end{EN}
 
 \begin{itemize}
 \item
    \codeline{git branch}
-   \de{Zeigt den aktuellen und die auf diesem Computer verf\"ugbaren Arbeitszweige an.}\en{Shows the current and the available branches on this computer.}
+   \de{Zeigt den aktuellen und die auf diesem Computer verfügbaren Arbeitszweige an.
+   }\en{Shows the current and the available branches on this computer.}
 
 \item
-   \codeline{git branch myNewFeature}
-   \de{Legt einen neuen Arbeitszweit mit den Namen \var{myNewFeature} an. Es werden die Daten aus dem aktuellen Arbeitszweig kopiert.}\en{Creates a new branch with the name \var{myNewFeature}. It contains a copy of all data from the current branch.}
+   \codeline{git branch \placeholder{myNewFeature}}
+   \de{Legt einen neuen Arbeitszweit mit den Namen \placeholder{myNewFeature} an. Es werden die Daten aus dem aktuellen Arbeitszweig kopiert.
+   }\en{Creates a new branch with the name \placeholder{myNewFeature}. It contains a copy of all data from the current branch.}
 
 \item
-   \codeline{git checkout myOtherNewFeature}
-   \de{Wechselt zum Arbeitszweig mit dem Namen \var{myOtherNewFeature}.}\en{Changes to the branch with the name \var{myOtherNewFeature}}
+   \codeline{git checkout \placeholder{myOtherNewFeature}}
+   \de{Wechselt zum Arbeitszweig mit dem Namen \placeholder{myOtherNewFeature}.
+   }\en{Changes to the branch with the name \placeholder{myOtherNewFeature}}
 
 \item
-   \codeline{git merge myNewFeature}
-   \de{Vereinigt den Arbeitszweig \var{myNewFeature} in den aktuellen Arbeitszweig.}\en{Merges the branche \var{myNewFeature} in the current branch.}
+   \codeline{git merge \placeholder{myNewFeature}}
+   \de{Vereinigt den Arbeitszweig \placeholder{myNewFeature} in den aktuellen Arbeitszweig.
+   }\en{Merges the branch \placeholder{myNewFeature} in the current branch.}
 \end{itemize}
 
 \tExample{}:
 \begin{DE}
-Der aktuelle Arbeitszweig ist \var{master}. Es soll die Datei \var{example.c} hinzugef\"ugtund die Datein \var{main.c} bearbeitet werden.
+   Der aktuelle Arbeitszweig ist \var{master}.
+   Es soll die Datei \var{example.c} hinzugefügtund die Datein \var{main.c} bearbeitet werden.
 \end{DE}
 \begin{EN}
-The current branch is  \var{master}. The new file \var{example.c} is to be created and the file \var{main.c} needs to be edited.
+   The current branch is \var{master}.
+   The new file \var{example.c} is to be created and the file \var{main.c} needs to be edited.
 \end{EN}
 
 \begin{Code}
 \bobOnEarth{\projectDir}{master} git pull
 \\{}\bobOnEarth{\projectDir}{master} git branch example
-\\{}
 \\{}\bobOnEarth{\projectDir}{example} vim example.c
 \\{}\bobOnEarth{\projectDir}{example} git add example.c
-\\{}
 \\{}\bobOnEarth{\projectDir}{example} vim main.c
 \\{}\bobOnEarth{\projectDir}{example} git add main.c
-\\{}
 \\{}\bobOnEarth{\projectDir}{example} git commit -m \"{}Added new example function.\"{}
 \\{}\bobOnEarth{\projectDir}{example} git push
 \\{}
@@ -86,5 +180,33 @@ The current branch is  \var{master}. The new file \var{example.c} is to be creat
 \end{Code}
 
 
+\subsection{\de{Dinge Ändern}\en{Changing things}}
+
+\begin{itemize}
+\item
+   \codeline{git add \placeholder{FILE\_NAME}}
+   \de{Fügt die neue oder geänderte Datei \placeholder{FILE\_NAME} dem nächsten Commit hinzu.
+   }\en{Adds the new or changed file \placeholder{FILE\_NAME} to the next commit.}
+
+\item
+   \codeline{git rm \placeholder{FILE\_NAME}}
+   \de{Entfernt die Datei \placeholder{FILE\_NAME} aus der Arbeitskopie und markiert sie als gelöscht im nächsten Commit.
+   }\en{Removes the file \placeholder{FILE\_NAME} from the working copy and marks it as deleted for the next commit.}
+
+\item
+   \codeline{git commit}
+   \de{Speichert die vorgemerkten Änderungen in einem Commit.
+   Es wird ein Texteditor angezeigt, in dem ein Kommentar zu diesem Commit angegeben werden muss.
+   }\en{Saves the marked changes as a commit.
+   It shows a text editor. In this editor you have to enter a comment for this commit.
+   }
+\end{itemize}
+
+\subsection{\de{Änderungen zum Server senden}\en{Sending changes to the server}}
+
+\de{Wenn Sie Ihre Änderungen committet haben, dann sollten sie diese Anschließend zum Server senden:
+}\en{After you have committed your changes, you should send your commits to the server:}
+
+\codeline{git push}
+
 
-\subsection{\de{Dinge hinzufuegen}\en{Adding things}}

+ 10 - 5
src/faq/cloneProject.tex

@@ -1,20 +1,25 @@
 \section{\de{Repository clonen}\en{Clone a repository}}
 \label{project:clone}
 \begin{itemize}
-\item \de{\"Offnen Sie Ihr Projekt auf \urlBase{}.}\en{Open your project on \urlBase{}.}
+\item \de{Öffnen Sie Ihr Projekt auf \urlBase{}.}\en{Open your project on \urlBase{}.}
 
 \item \tClickOn{Clone} \de{und kopieren Sie den Link unter}\en{and copy the link below} \var{Clone with SSH}
 
     \includegraphics[width=\linewidth]{images/newProject/projectPage.png}
 
-\item \de{\"Offnen Sie ein Terminal.}\en{Open a terminal.}
+\item \de{Öffnen Sie ein Terminal.}\en{Open a terminal.}
 
 \item \de{Navigieren Sie zum Ordner, in dem Sie das Repository speichern wollen.}\en{Navigate to the folder, where you want to store your repository.}
 
-    \codeline{cd \textbf{my/favorite/repo/storage/directory}}
+    \codeline{cd \placeholder{my/favorite/repo/storage/directory}}
 
-\item \de{Ersetzen Sie im unten stehenden Befehl \textbf{git@git.informatik.uni-rostock.de:example-user/example-project.git} durch den eben kopierten Link und f\"uhren Sie den Befehl aus.}\en{In the command below replace \textbf{git@git.informatik.uni-rostock.de:kristian/example-project.git} with the link you copied before. Execute the command.}
+\item \de{Ersetzen Sie im unten stehenden Befehl
+   \placeholder{git@git.informatik.uni-rostock.de:example-user/example-project.git}
+   durch den eben kopierten Link und führen Sie den Befehl aus.
+   }\en{In the command below replace
+   \placeholder{git@git.informatik.uni-rostock.de:kristian/example-project.git}
+   with the link you copied before. Execute the command.}
 
-    \codeline{git clone \textbf{git@git.informatik.uni-rostock.de:example-user/example-project.git}}
+    \codeline{git clone \placeholder{git@git.informatik.uni-rostock.de:example-user/example-project.git}}
 \end{itemize}
 

+ 126 - 85
src/faq/doNotStore.tex

@@ -1,27 +1,56 @@
-\section{\de{Gespeicherte Daten verwalten}\en{Manage stored data}}
+%\section{\de{Gespeicherte Daten verwalten}\en{Manage stored data}}
 \subsection{\de{Was \underline{nicht} in GIT gespeichert werden sollte}\en{What \underline{not} to store in in GIT}}
 
-Die folgenden Daten sollten nicht im GIT gespeichert werden. Insbesondere wenn die Datei > 1MB ist.
+\de{Die folgenden Daten sollten nicht im GIT gespeichert werden. Insbesondere wenn die Datei > 1MB ist.
+}\en{The following files should not stored in GIT. Especially, if the file size is > 1 MB.}
 
 \newcommand{\ext}[1]{\var{*.#1}}
 
 \begin{itemize}
-\item Videos (\tZB{} \ext{avi} / \ext{mp4} / \ext{wmv})
-\item \de{Bilder}{Images} (\tZB{} \ext{jpg} / \ext{png} / \ext{tiff} / \ext{bmp} / \ext{xcf} / \ext{psd})
-\item \de{Pr\"asentationen}{Presentations} (\tZB{} \ext{ppt} / \ext{pptx} / \ext{pdf})
-\item \de{Ton-Dateien}\en{Audio-Files} (\tZB{} \ext{wav} / \ext{mp3} / \ext{flac} / \ext{ogg})
-\item \de{Programme, Bibliotheken, Installer}\en{Executables, Libraries, istaller} (\tZB{} \ext{exe} / \ext{dll} / \ext{lib} / \ext{msi} / \ext{o} / \ext{so} / \ext{class} / \ext{jar})
-\item Bin\"ardateien (\tZB{} \ext{bin} / \ext{dat} / \ext{zip} / \ext{gz} / \ext{bz})
-\item Dateien, die sich generieren lassen.
-\item Dateien, die w\"ahrend des Bauvorganges entstehen. (\tZB{} \ext{o} / \ext{class})
-\item Programm- / Debugausgaben (\tZB{} \ext{log}, \ext{dat})
-\item Ordner anderer Versionsverwaltungssysteme (\tZB \var{.svn})
-\item Backups, Tempor\"are Editor-Dateien, Lokale Workspace-Konfigurationen (\tZB \ext{swp} / \var{*\~})
+\item
+   Videos
+   (\tZB{} \ext{avi} ; \ext{mp4} ; \ext{wmv})
+\item
+   \de{Bilder}\en{Images}
+   (\tZB{} \ext{jpg} ; \ext{png} ; \ext{tiff} ; \ext{bmp} ; \ext{xcf} ; \ext{psd})
+\item
+   \de{Präsentationen}\en{Presentations}
+   (\tZB{} \ext{ppt} ; \ext{pptx} ; \ext{pdf})
+\item
+   \de{Ton-Dateien}\en{Audio-Files}
+   (\tZB{} \ext{wav} ; \ext{mp3} ; \ext{flac} ; \ext{ogg})
+\item 
+   \de{Programme, Bibliotheken, Installer
+   }\en{Executables, Libraries, installer}
+   (\tZB{} \ext{exe} ; \ext{dll} ; \ext{lib} ; \ext{msi} ; \ext{o} ; \ext{so} ; \ext{class} ; \ext{jar})
+\item
+   \de{Binärdateien}\en{Binary files}
+   (\tZB{} \ext{bin} ; \ext{dat} ; \ext{zip} ; \ext{gz} ; \ext{bz})
+\item
+   \de{Dateien, die sich generieren lassen.
+   }\en{Files, you can generate with your sources.}
+\item
+   \de{Dateien, die während des Bauvorganges entstehen.
+   }\en{Files, which are generated during the building process}
+   (\tZB{} \ext{o} ; \ext{class} ; \ext{aux} ; \ext{idx})
+\item
+   \de{Programm- / Debugausgaben
+   }\en{Debug or program Output files }
+   (\tZB{} \ext{log}, \ext{dat})
+\item
+   \de{Ordner anderer Versionsverwaltungssysteme
+   }\en{Folder and files from an other version management system.}
+   (\tZB{} \var{.svn})
+\item
+   \de{Backups, Temporäre Dateien, Lokale Workspace-Konfigurationen
+   }\en{Backups, temporary files, local workspace configuration}
+   (\tZB{} \ext{swp} ; \var{*\~} ; \var{tmp} )
 \end{itemize}
 
-Repositories sollten mit History < 300Mb bleiben.
-\\
-Bei Repositories $\geq$ 500MB mahnen wir.
+\de{Repositories sollten mit History < 300MB bleiben.
+}\en{Your repository should stay < 300MB, including history.}
+%\\
+%Bei Repositories $\geq$ 500MB mahnen wir.
 
 
 \subsection{\de{Was in ein GIT-Repository gehoert.}\en{What to store in a GIT repository.}}
@@ -30,7 +59,9 @@ Bei Repositories $\geq$ 500MB mahnen wir.
 \item \de{Dokumentationen}\en{Documentation}
 \item Makefiles
 \item \de{Zum Bauen erforderliche Konfigurationen.}\en{Configuration, needed to build your project.}  
-\item \de{Notwendige Dateien, die nicht generiert oder aus dem Internet / anderen Repositories geladen werden k\"onnen.}\en{Needed files, that can't be generated or loaded from the internet or other repositories.}
+\item
+   \de{Notwendige Dateien, die nicht generiert oder aus dem Internet / anderen Repositories geladen werden können.
+   }\en{Needed files, that can't be generated or loaded from the internet or other repositories.}
 \end{itemize}
 
 \newpage
@@ -42,70 +73,63 @@ Bei Repositories $\geq$ 500MB mahnen wir.
    Dabei kann auch mit Wildcards (*) gearbeitet werden.
 \end{DE}
 \begin{EN}
-   In every folder of you GIT repository you may add a \code{.gitignore} file.
+   In every folder of you GIT repository you may add a \var{.gitignore} file.
    This is a text file, listing all folder or files that should be ignored by git.
    You don't need to worry using \code{git add .}. It will not add these files.
    In the list you may use wildcards (*).
 \end{EN}
 
-\subsubsection{\de{Beispiel: TeX Dokument}\en{Example: Tex Document}}
+
+
+
+
+
+\subsubsection{\de{Beispiel: C Projekt}\en{Example: C Project}}
 
 \begin{minipage}[t]{0.39\textwidth}\parInit
 \de{Das Projekt hat diese Ordner-Struktur:}\en{The project has this folder structure:}
 \begin{itemize}
 \item \var{Makefile}
 \item \var{.gitignore}
-   \item \var{myPaper.tex}
-   \item \badvar{myPaper.pdf}
-   \item \badvar{myPaper.aux}
-   \item \badvar{myPaper.idx}
-   \item \badvar{myPaper.toc}
-   \item \badvar{myPaper.out}
-   \item \badvar{myPaper.log}
-   \item \var{chapter1.tex}
-   \item \badvar{chapter1.aux}
-   \item \badvar{.chapter1.aux.swp}
-   \item \var{chapter2.tex}
-   \item \badvar{chapter2.aux}
-   \item \badvar{chapter2.aux\~}
-   \item \ldots
-\item \var{images/}
-   \begin{itemize}
-   \item \var{logo.png}
-   \item \var{interestingGraphic.fig}
-   \item \ldots
-   \end{itemize}
+   \item \badvar{a.out}
+   \item \var{guessMyNumber.c}
+   \item \badvar{guessMyNumber.o}
+   \item \badvar{myLibrary.a}
+   \item \var{myLibrary.c}
+   \item \badvar{myLibrary.o}
+   \item \badvar{myLibrary.so}
 \end{itemize}
 \end{minipage}
 \hfill
 \begin{minipage}[t]{0.59\textwidth}\parInit
 \begin{DE}
-   Die \ext{tex} Dateien sind die Quelltexte zum TeX Dokument.
-   Im Ordner \var{images} sind f\"ur das Dokument wichtige Bilder oder Quelltexte, die diese Bilder generieren.
+   Die \ext{c} Dateien sind Quelltexte.
    Diese Dateien sollten gespeichert werden.
 
-   Die Datei \var{myPaper.pdf} ist das compilierte Endprodukt.
-   Die \ext{log}, \ext{out}, \ext{aux}, \ext{toc}, \ext{idx} Dateien sind Nebenprodukte des Bauprozesses.
+   Die \ext{o} Dateien sind Compiler-Zwischenergebnisse.
+   Die Datei \var{a.out} ist das Ausführbare Programm nach dem Compilieren und Linken.
+   Die Dateien \var{myLibrary.a} und \var{myLibrary.so} sind aus \var{myLibrary.c} erstellte Bibliotheken.
    Diese Dateien sollten nicht in das Repository.
 
-   Der Editor legt w\"ahrend des Bearbeitens \ext{swp} Dateien an (z.B: \var{chapter1.swp}).
-   Beim Speichern legt der Editor Backups an (z.B: \var{chapter2.tex\~}).
-   Die Backup-Dateien und die \ext{swp} Dateien sollen nicht in das Repository.
-
-   Die \var{.gitignore} k\"onnte wie folgt aussehen:
+   Die \var{.gitignore} könnte wie folgt aussehen:
 \end{DE}
 \begin{EN}
-   \ldots
+   The files \ext{c} are source code.
+   This files should be in the repository.
+
+   The \ext{o} files are files, the compiler needs during the build process.
+   The file \var{a.out} is the generated executable program.
+   The files \var{myLibrary.a} and \var{myLibrary.so} are the libraries, generated from \var{myLibrary.c}.
+   This files should not be in the repository.
+
+   The \var{.gitignore} might be like the following:
 \end{EN}
 
 \begin{Code}
-{*}.swp\\
-{*}\~\\
-{*}.aux\\
-{*}.idx\\
-{*}.toc\\
+{*}.a\\
+{*}.so\\
+{*}.o\\
 {*}.out\\
-{*}.log
 \end{Code}
 \end{minipage}
 
@@ -113,56 +137,73 @@ Bei Repositories $\geq$ 500MB mahnen wir.
 
 
 
-\subsubsection{\de{Beispiel: C Projekt}\en{Example: C Project}}
+
+\subsubsection{\de{Beispiel: TeX Dokument}\en{Example: Tex Document}}
 
 \begin{minipage}[t]{0.39\textwidth}\parInit
-\de{Das Projekt hat diese Ordner-Struktur:}\en{The project has this folder structure:}
+%\de{Das Projekt hat diese Ordner-Struktur:}\en{The project has this folder structure:}
 \begin{itemize}
-\item \var{Makefile}
 \item \var{.gitignore}
-   \item \badvar{a.out}
-   \item \var{guessMyNumber.c}
-   \item \badvar{guessMyNumber.o}
-   \item \badvar{myLibrary.a}
-   \item \var{myLibrary.c}
-   \item \badvar{myLibrary.o}
-   \item \badvar{myLibrary.so}
-   \item \ldots
+   \item \var{myPaper.tex}
+   \item \badvar{myPaper.pdf}
+   \item \badvar{myPaper.aux}
+   \item \badvar{myPaper.idx}
+   \item \badvar{myPaper.toc}
+   \item \badvar{myPaper.out}
+   \item \badvar{myPaper.log}
+   \item \var{chapter1.tex}
+   \item \badvar{chapter1.aux}
+   \item \badvar{.chapter1.aux.swp}
+   \item \var{chapter2.tex}
+   %\item \badvar{chapter2.aux}
+   \item \badvar{chapter2.tex\~}
+\item \var{images/}
+   \begin{itemize}
+   \item \var{logo.png}
+   \item \var{interestingGraphic.fig}
+   \end{itemize}
 \end{itemize}
 \end{minipage}
 \hfill
 \begin{minipage}[t]{0.59\textwidth}\parInit
 \begin{DE}
-   Die \ext{c} Dateien sind Quelltexte.
+   Die \ext{tex} Dateien sind die Quelltexte zum TeX Dokument.
+   Im Ordner \var{images} sind für das Dokument wichtige Bilder oder Quelltexte, die diese Bilder generieren.
    Diese Dateien sollten gespeichert werden.
 
-   Die \ext{o} Dateien sind Compiler-Zwischenergebnisse.
-   Die Datei \var{a.out} ist das Ausf\"uhrbare Programm nach dem Compilieren und Linken.
-   Die Dateien \var{myLibrary.a} und \var{myLibrary.so} sind aus \var{myLibrary.c} erstellte Bibliotheken.
+   Die Datei \var{myPaper.pdf} ist das compilierte Endprodukt.
+   Die \ext{log}, \ext{out}, \ext{aux}, \ext{toc}, \ext{idx} Dateien sind Nebenprodukte des Bauprozesses.
    Diese Dateien sollten nicht in das Repository.
 
-   Der Editor legt w\"ahrend des Bearbeitens \ext{swp} Dateien an.
-   Beim Speichern legt der Editor Backups an (z.B: \var{myLibrary.c\~}).
+   Der Editor legt während des Bearbeitens \ext{swp} Dateien an (z.B: \var{chapter1.swp}).
+   Beim Speichern legt der Editor Backups an (z.B: \var{chapter2.tex\~}).
    Die Backup-Dateien und die \ext{swp} Dateien sollen nicht in das Repository.
 
-   Die \var{.gitignore} k\"onnte wie folgt aussehen:
+   Die \var{.gitignore} könnte wie folgt aussehen:
 \end{DE}
 \begin{EN}
-   \ldots
+   The \ext{tex} files are the TeX source code.
+   In the folder \var{images} are images, needed to create the finally document.
+   This files should be in the repository.
+
+   \var{myPaper.pdf} is the generated document.
+   The \ext{log}, \ext{out}, \ext{aux}, \ext{toc}, \ext{idx} files are generated and needed during the build process.
+   This files should not be in the repository.
+
+   The \ext{swp} files are created and used by the text editor during (e.G: \var{chapter1.swp}).
+   The editor stores a backup for each edited file (e.G: \var{chapter2.tex\~}).
+   The backup files and the \ext{swp} files shoult not be in the repository.
+
+   The \var{.gitignore} might be like the following:
 \end{EN}
 
 \begin{Code}
-{*}.a\\
-{*}.so\\
-{*}.o\\
-{*}.out\\
-{*}\~\\
 {*}.swp\\
+{*}\~\\
+{*}.aux\\
+{*}.idx\\
+{*}.toc\\
+{*}.out\\
+{*}.log
 \end{Code}
 \end{minipage}
-
-
-
-
-
-

+ 39 - 17
src/faq/keys.tex

@@ -1,40 +1,62 @@
-\section{\de{SSH Schl\"ussel einrichten}\en{Set up SSH keys}}
+\section{\de{SSH Schlüssel einrichten}\en{Set up SSH keys}}
 
-\subsection{\de{Die \"Ubersichtsseite \"offnen}\en{Open the overview page}}
+\subsection{\de{Die Übersichtsseite öffnen}\en{Open the overview page}}
 \begin{itemize}
-\item \de{Klicken Sie oben rechts auf Ihr Symbol.}\en{Click on your symbol on the top right side.}
+\item \de{Klicken Sie oben rechts auf Ihr Symbol.
+   }\en{Click on your symbol on the top right side.}
 
-\item \tClickOn{Edit profile} \de{in dem erscheinnenden Men\"u.}\en{in the appearing menu.}
+\item \tClickOn{Edit profile}
+   \de{in den erscheinenden Menü.
+   }\en{in the appearing menu.}
 
-\item \tClickOn{SSH Keys} \de{in Men\"u auf der linken Seite.}\en{in the menu on the left side.}
+\item \tClickOn{SSH Keys}
+   \de{in Menü auf der linken Seite.
+   }\en{in the menu on the left side.}
 
     \includegraphics[width=\linewidth]{images/keys/keyOverview.png}
 \end{itemize}
 
-\subsection{\de{Ein SSH Schl\"ussel hinzuf\"ugen}\en{Add a SSH key}}
+\subsection{\de{Ein SSH Schlüssel hinzufügen}\en{Add a SSH key}}
 
 \begin{itemize}
-\item \de{Sie finden ihre SSH-Schl\"ussel in ihrem Home Verzeichnis, im Ordner \var{.ssh}.}\en{You find your ssh keys in your home folder in the folder \var{.ssh}}
-    \de{Die f\"ur diesen Schritt intessanten Dateien haben die Endung \var{.pub}. Z.B: \var{id\_ecdsa.pub} oder \var{id\_rsa.pub}}\en{The files we need have the extension \var{.pub}. E.G\var{id\_ecdsa.pub} or \var{id\_rsa.pub}}
-
-\item \de{\"Offnen sie die Datei mit Ihrem public Key in einem Text-Editor. Der Inhalt ist eine einzige Zeile und sollte etwa wie folgt aussehen:}\en{Open your public key in a text-editor. The content is a single line and should look like this:}
+\item
+   \de{Sie finden ihre SSH-Schlüssel in ihrem Home Verzeichnis, im Ordner \var{.ssh}.
+   Die für diesen Schritt intessanten Dateien haben die Endung \var{.pub}.
+   Z.B: \var{id\_ecdsa.pub} oder \var{id\_rsa.pub}
+   }\en{You find your ssh keys in your home folder in the folder \var{.ssh}.
+   The files we need have the extension \var{.pub}.
+   E.G: \var{id\_ecdsa.pub} or \var{id\_rsa.pub}}
+
+\item
+   \de{Öffnen sie die Datei mit Ihrem public Key in einem Text-Editor.
+   Der Inhalt ist eine einzige Zeile und sollte etwa wie folgt aussehen:
+   }\en{Open your public key in a text-editor.
+   The content is a single line and should look like this:}
 
     \codeline{ecdsa-sha2-nistp521 AAAA...FHw== user@computer}
 
-\item \de{Kopieren Sie den Schl\"ussel in das Feld \var{key}}\en{Copy your key in the field \var{Key}}
+\item \de{Kopieren Sie den Schlüssel in das Feld \var{key}.
+   }\en{Copy your key in the field \var{Key}.}
 
-\item \de{Geben Sie dem Schl\"ussel ein Titel (Feld: \var{Titel}), mit dem Sie wieder erkennen k\"onnen, zu welchem Account/Computer dieser gehoert.}\en{Give your key a \var{Title} so you might remember to what account/computer it belongs.}
+\item \de{Geben Sie dem Schlüssel ein Titel (Feld: \var{Titel}), mit dem Sie wieder erkennen können, zu welchem Account/Computer dieser gehört.
+   }\en{Give your key a \var{Title} so you might remember to what account/computer it belongs.}
 
-\item \tClickOn{Add key}
+\item \tClickOn{Add key}.
 \end{itemize}
 
 
-\subsection{\de{Ein SSH Schl\"ussel l\"oschen}\en{Remove a SSH key}}
+\subsection{\de{Ein SSH Schlüssel löschen}\en{Remove a SSH key}}
 
 \begin{itemize}
-\item \de{Finden Sie inder Liste \var{Your SSH keys} den Schl\"ussel, den SIe l\"oschen wollen.}\en{Find the key, your want to delete in the \var{Your SSH keys} list.}
+\item
+   \de{Finden Sie in der Liste \var{Your SSH keys} den Schlüssel, den Sie löschen wollen.
+   }\en{Find the key, your want to delete in the \var{Your SSH keys} list.}
 
-\item \de{Klicken Sie auf das M\"ulltonnensymbol, rechts neben den Schl\"ssel.}\en{Click on trash symbol, right to the key.}
+\item
+   \de{Klicken Sie auf das Mülltonnensymbol \includegraphics[height=1em]{images/keys/trash.png}, rechts neben den Schlüssel.
+   }\en{Click on trash symbol \includegraphics[height=1em]{images/keys/trash.png}, right to the key.}
 
-\item \de{Best\"atigen Sie die Frage \var{Are you sure you want to delete this SSH key?} mit Klick auf \var{Delete}.}\en{Confirm the question \var{Are you sure you want to delete this SSH key?} with a click on \var{Delete}.}
+\item
+   \de{Bestätigen Sie die Frage \var{Are you sure you want to delete this SSH key?} mit Klick auf \var{Delete}.
+   }\en{Confirm the question \var{Are you sure you want to delete this SSH key?} with a click on \var{Delete}.}
 \end{itemize}

+ 39 - 23
src/faq/newProject.tex

@@ -12,31 +12,31 @@
 
 
 \begin{DE}
-    F\"ur das Beispiel wird der Account \var{myAccount} und der Projekt-Name \var{myProject} angenommen.
-    Die \textbf{Fettgedrukten} Teile der Beispiele m\"uessen durch die zu Ihnen passenden Werte ersetzt werden.
+    Für das Beispiel wird der Account \placeholder{myAccount} und der Projekt-Name \placeholder{myProject} angenommen.
+    Die \placeholder{grünen} Teile der Beispiele müessen durch die zu Ihnen passenden Werte ersetzt werden.
 \end{DE}
 \begin{EN}
-    The Examples uses the account \var{myAccount} and the project name \var{myProject}.
-    The parts printed in \textbf{bold} have to be replaced by values according to your account / project.
+    The Examples uses the account \placeholder{myAccount} and the project name \placeholder{myProject}.
+    The parts printed in \placeholder{green} have to be replaced by values according to your account / project.
 \end{EN}
 \begin{enumerate}
-\item \de{Ordner f\"ur das Projekt erstellen:}\en{Create a folder for the new project:}
-    \codeline{mkdir \textbf{myProject}}
+\item \de{Ordner für das Projekt erstellen:}\en{Create a folder for the new project:}
+    \codeline{mkdir \placeholder{myProject}}
 
-\item \de{Ordner f\"ur das Projekt betreten:}\en{Enter the folder for the new project:}
-    \codeline{cd \textbf{myProject}}
+\item \de{Ordner für das Projekt betreten:}\en{Enter the folder for the new project:}
+    \codeline{cd \placeholder{myProject}}
 
 \item \de{Einige Dateien anlegen:}\en{Create some files:}
-    \codeline{echo '\textbf{My Project $>$}' README.md}
+    \codeline{echo '\placeholder{My Project}' $>$ README.md}
 
-\item \de{GIT Initialisieren}\en{Initialize GIT}
+\item \de{GIT Initialisieren.}\en{Initialize GIT.}
     \codeline{git init}
 
-\item \de{Die Dateien dem neuen GIT Repository hinzyf\"ugen:}\en{Add the files to the new GIT Repository:}
+\item \de{Die Dateien dem neuen GIT Repository hinzyfügen:}\en{Add the files to the new GIT Repository:}
     \codeline{git add~.}
 
 \item \de{Projekt zum Server senden.}\en{Send new Project to server.}
-    \codeline{git push --set-upstream git@git.informatik.uni-rostock.de:\textbf{myAccount}/\textbf{myProject} master}
+    \codeline{git push --set-upstream git@git.informatik.uni-rostock.de:\placeholder{myAccount}/\placeholder{myProject} master}
 \end{enumerate}
 
 
@@ -46,19 +46,28 @@
 \subsection{\de{Mit GIT Vorlagen}\en{With GIT examples}}
 
 \begin{itemize}
-\item \de{Klicken Sie oben links auf \var{Projects}.}\en{Click on \var{Projects} on the top left side.}
+\item
+   \de{Klicken Sie oben links auf \var{Projects}.
+   }\en{Click on \var{Projects} on the top left side.}
 
-    \de{Es erscheint das Projektauswahlmen\"u.}\en{It appears a menu.}
+    \de{Es erscheint das Projektauswahlmenü.
+   }\en{It appears a menu.}
 
     \includegraphics[width=\linewidth]{images/newProject/projectsHeaderWithMenu.png}
 
-\item \de{Im darauf erscheinenden Men\"u klicken Sie auf \var{your projects}}\en{Click on \var{your projects} in the appearing menu.}
+\item
+   \de{Im darauf erscheinenden Menü klicken Sie auf \var{your projects}
+   }\en{Click on \var{your projects} in the appearing menu.}
 
-    \de{Es erscheint die Liste ihrer Projekte.}\en{It appears the list of your projects.}
+    \de{Es erscheint die Liste ihrer Projekte.
+   }\en{It appears the list of your projects.}
 
-\item \tClickOn{new project} \de{am rechten Rand.}\en{on the right side.}
+\item \tClickOn{new project}
+   \de{am rechten Rand.
+   }\en{on the right side.}
 
-    \de{Es erscheint die Projekt-Erstellen-Auswahl.}\en{It appears the selection page for a new project.}
+    \de{Es erscheint die Projekt-Erstellen-Auswahl.
+   }\en{It appears the selection page for a new project.}
 
     \includegraphics[width=\linewidth]{images/newProject/newProjectSelector.png}
 
@@ -66,18 +75,25 @@
 
     \includegraphics[width=\linewidth]{images/newProject/projectsTemplate.png}
 
-\item \de{Geben Sie ein Namen f\"ur Ihr Projekt im Feld \var{Project name} ein.}\en{Enter a name for your project in the box \var{Project name}.}
+\item
+   \de{Geben Sie ein Namen für Ihr Projekt im Feld \var{Project name} ein.
+   }\en{Enter a name for your project in the box \var{Project name}.}
 
-\item \de{Sie k\"onnen eine kurze Beschreibung Ihres Projektes im Feld \var{Project description} angeben.}\en{You may add a short description for your project in the box \var{Project description}.}
+\item
+   \de{Sie können eine kurze Beschreibung Ihres Projektes im Feld \var{Project description} angeben.
+   }\en{You may add a short description for your project in the box \var{Project description}.}
 
-\item \de{Aktivieren Sie das H\"akchen \var{Initialize repository with a README}, damit sie ein nicht leeres Repository zum Auschecken haben.
+\item
+   \de{Aktivieren Sie das Häkchen \var{Initialize repository with a README}, damit sie ein nicht leeres Repository zum Auschecken haben.
     }\en{Activate the checkbox \var{Initialize repository with a README}. So you have a non empty Repository and may check it out to your computer.}
 
 \item \tClickOn{Create project}
     
-    \de{Es erscheint die \"Ubersichtsseite des neuen Projektes.}\en{It appears the overview of your new project.}
+   \de{Es erscheint die Übersichtsseite des neuen Projektes.
+   }\en{It appears the overview of your new project.}
 
-    \de{N\"achster Schritt ist, ihr neues Repository auf Ihren Computer zu clonen. (Kapitel \ref{project:clone})}\en{Next step is cloning jour Repository. (Chapter \ref{project:clone})}
+   \de{Nächster Schritt ist, ihr neues Repository auf Ihren Computer zu clonen. (Kapitel \ref{project:clone})
+   }\en{Next step is cloning your Repository. (Chapter \ref{project:clone})}
 
 \end{itemize}
 

+ 2 - 2
src/translation.tex

@@ -2,9 +2,9 @@
 \newcommand{\urlBase}{\url{https://git.informatik.uni-rostock.de}}
 
 
-\newcommand{\tSelect}{\de{W\"ahlen sie}\en{Select}}
+\newcommand{\tSelect}{\de{Wählen sie}\en{Select}}
 \newcommand{\tNavigateTo}{\de{Navigiere im Browser zu}\en{Navigate with your Browser to}}
-\newcommand{\tEnterInformatikAccountName}{\de{Geben Sie das K\"urzel Ihres Informatik-Accounts ein.}\en{Enter the name of your informatik account.}}
+\newcommand{\tEnterInformatikAccountName}{\de{Geben Sie das Kürzel Ihres Informatik-Accounts ein.}\en{Enter the name of your informatik account.}}
 \newcommand{\tEnterInformatikAccountPass}{\de{Geben Sie das Password Ihres Informatik-Accounts ein.}\en{Enter the password of your informatik account.}}
 \newcommand{\tEnterEMailAddress}{\de{Geben Sie Ihre E-Mail-Adresse ein.}\en{Enter your e-mail address.}}
 \newcommand{\tEnterPassword}{\de{Geben Sie Ihr Password ein.}\en{Enter your password.}}