<?xml version="1.0" encoding="utf-8" standalone="yes"?><?xml-stylesheet href="/rss.xsl" type="text/xsl"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Git on Jan Kremer</title>
    <link>https://jankremer.eu/tags/git/</link>
    <description>Recent content in Git on Jan Kremer</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>de</language>
    <lastBuildDate>2023-09-25 00:00</lastBuildDate><atom:link href="https://jankremer.eu/tags/git/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Deploy a website using Git</title>
      <link>https://jankremer.eu/blog/git-deploy/</link>
      <pubDate>2023-09-25 00:00</pubDate>
      
      <guid>https://jankremer.eu/blog/git-deploy/</guid>
      <description>&lt;h2 id=&#34;git-ftp&#34;&gt;Git-ftp&lt;/h2&gt;
&lt;p&gt;I tested a lot of different FTP programs including GUIs, TUIs and CLIs.
There might be a problem with the FTP server but I don&amp;rsquo;t control that unfortunately.
The only program working flawlessly so far is &lt;a href=&#34;https://git-ftp.github.io/&#34;&gt;git-ftp&lt;/a&gt;, a plugin for Git.
Not only is this perfectly integrated into git, which I am using anyway.
Also no errors occurred so far.
Plus I can automate the upload using &lt;a href=&#34;#git-hooks&#34;&gt;hooks&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;git-hooks&#34;&gt;Git hooks&lt;/h2&gt;
&lt;p&gt;The real MVP however is &lt;a href=&#34;https://git-scm.com/docs/githooks&#34;&gt;Git Hooks&lt;/a&gt;.
Hooks are scripts that run automatically on certain Git events.&lt;/p&gt;
&lt;p&gt;I did, for example, create a hook to automacally build the website after commiting a change.
Yes, this could introduce problems such as breaking changes and I end up with a broken website, but as I test it regularly this should not become a problem.&lt;/p&gt;
&lt;p&gt;The second hook I created pushes the website to the FTP server whenever I push to the remote repository.&lt;/p&gt;
&lt;h2 id=&#34;git-submodule&#34;&gt;Git submodule&lt;/h2&gt;
&lt;p&gt;I recently discovered that I can use &lt;code&gt;git submodule&lt;/code&gt; to add the &lt;code&gt;public&lt;/code&gt; folder created by Hugo.
This allows me to upload the repository to my pages repository on Codeberg and have the site mirrored there.
Secoundly, it allows me to upload the website with git-ftp without uploading everything else.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;What awesome features of Git are you using?&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>git</title>
      <link>https://jankremer.eu/blog/git/</link>
      <pubDate>2023-03-22 16:47</pubDate>
      
      <guid>https://jankremer.eu/blog/git/</guid>
      <description>&lt;p&gt;Ursprünglich sollte es in diesem Post um &lt;a href=&#34;https://git-scm.com&#34;&gt;git&lt;/a&gt;, jedoch ist mir bei Brainstorming aufgefallen, dass das Thema eigentlich deutlich umfangreicher sein sollte.&lt;/p&gt;
&lt;p&gt;Meine Reise begann, als ich beschloss, diesen Blog zu starten.
Da ich bis dahin Webseiten nur in reinem HTML und CSS geschrieben hatte, versuchte ich es zunächst damit.
Schnell stellten sich dabei aber mehrere Probleme heraus:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Ich bin nicht gut in CSS.&lt;/li&gt;
&lt;li&gt;Einen RSS-Feed von Hand zu erstellen ist umständlich und nicht sinnvoll.&lt;/li&gt;
&lt;li&gt;Mehrere Seiten mit einheitlichem Design in HTML zu schreiben ist kompliziert.&lt;/li&gt;
&lt;li&gt;Ich mag die HTML Syntax nicht.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Ich war überzeugt, dass ich eine bessere Lösung dafür brauche.
Nach kurzer und intensiver Recherche fand ich heraus, dass die Lösung meine Problems &lt;em&gt;&amp;ldquo;static site generator&amp;rdquo;&lt;/em&gt; heißt.
Darüber hatte ich bereits &lt;a href=&#34;https://jankremer.eu/blog/genesis&#34;&gt;hier&lt;/a&gt; geschrieben.&lt;/p&gt;
&lt;p&gt;Im Zuge dessen lernte ich auch &lt;em&gt;git&lt;/em&gt; kennen.
Ich hatte zwar schon früher von &lt;em&gt;git&lt;/em&gt; gehört, bis dato aber nur zum herunterladen von Software benutzt.
Und damit sind wir schon im Kern meines Problems gelandet:&lt;/p&gt;
&lt;h2 id=&#34;warum-kannte-ich-git-nicht&#34;&gt;Warum kannte ich &lt;em&gt;git&lt;/em&gt; nicht?&lt;/h2&gt;
&lt;p&gt;Meine ersten Erfahrungen mit dem Programmieren machte ich damals in der Schule, angefangen mit HTML und CSS, später mit Python und Java.
Aber ohne &lt;em&gt;git&lt;/em&gt;.
An der Uni (4 Semester Wirtschaftsinformatik) ging es dann weiter mit Java, aber weiterhin ohne &lt;em&gt;git&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Erst beim erstellen dieses Blogs kam ich auf die Idee mich mal ein wenig mit &lt;a href=&#34;https://de.wikipedia.org/wiki/Versionsverwaltung&#34;&gt;Versionsverwaltung&lt;/a&gt; auseinander zu setzen.
Und seitdem bin ich verliebt.&lt;/p&gt;
&lt;p&gt;Inzwischen denke ich, dass jeder von &lt;em&gt;git&lt;/em&gt; profitieren könnte.
Das einfache Zurückspringen zu früheren Versionen, falls mal was kaputt geht, oder das Auslagern und Zusammenführen von &lt;em&gt;Branches&lt;/em&gt; sind einfach großartig.
Zudem ermutigt wird man ermutigt, an logisch sinnvollen Stellen zu &lt;em&gt;commiten&lt;/em&gt; und somit den bisherigen Stand zu speichern.&lt;/p&gt;
&lt;p&gt;Es wäre meiner Meinung nach auch sinnvoll, Texte, wie zum Beispiel Projektarbeiten, nicht in &lt;em&gt;Microsoft Word&lt;/em&gt; zu verfassen sondern besser in Textdokumenten und diese dann mit &lt;em&gt;git&lt;/em&gt; zu verwalten und zusammenzufügen (merge).
Diese könnten dann ganz leicht in &lt;a href=&#34;https://jankremer.eu/blog/latex&#34;&gt;LaTeX-Dokumente&lt;/a&gt; umgewandelt werden oder auch in &lt;em&gt;Word&lt;/em&gt; formatiert werden.
Darüber hinaus würde dies den Autoren die Möglichkeit geben, einen Texteditor der Wahl zu nutzen.
Gerade auf älteren Maschinen, wie meinem &lt;em&gt;MacBook Pro&lt;/em&gt; von 2015 braucht &lt;em&gt;Word&lt;/em&gt; inzwischen einiges an Ressourcen.
Dies könnte aber auch damit zusammen hängen, dass &lt;em&gt;Word&lt;/em&gt; auf meinem Computer stolze 2.3 GB schwer ist.
Zum Vergleich: Das &lt;strong&gt;gesamte&lt;/strong&gt; &lt;em&gt;LibreOffice&lt;/em&gt; braucht keine 800 MB.&lt;/p&gt;
&lt;p&gt;Ich verstehe auch, dass nicht jeder auf der Kommandozeile zu Hause ist, jedoch gibt es ja auch Tools wie GitHub oder Programme mit grafischer Oberfläche, es sollte also für jeden was dabei sein.&lt;/p&gt;
&lt;p&gt;Ich kratze hier gerade mal an der Oberfläche der Möglichkeiten, das meiste ist mir selbst noch nicht bekannt.
Ich kann nur jedem, der &lt;em&gt;git&lt;/em&gt; noch nicht nutzt es nur wärmstens empfehlen, es mal auszuprobieren.
Schaden kann es nicht!&lt;/p&gt;
&lt;p&gt;P.S.: Ja ich weiß, &lt;em&gt;git&lt;/em&gt; ist kein Geheimtipp.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>LaTeX</title>
      <link>https://jankremer.eu/blog/latex/</link>
      <pubDate>2023-01-12 15:35</pubDate>
      
      <guid>https://jankremer.eu/blog/latex/</guid>
      <description>&lt;p&gt;Im Rahmen meines Wahlpflichtpraktikums schreibe ich aktuell an meiner zweiten größeren Projektarbeit. Die einzige andere Projektarbeit war bisher die für das Praktikum Pharmazeutische Technologie, welche, Stand jetzt, noch nicht vollständig abgeschlossen ist.&lt;/p&gt;
&lt;p&gt;Für diese Arbeit entschieden wir uns jedoch für &lt;em&gt;Microsoft Word&lt;/em&gt;. Also im Grunde wurde uns diese Entscheidung fast abgenommen, da die Universität Regensburg uns das &lt;em&gt;Office 365&lt;/em&gt; zur Verfügung stellt und es damit auch bei uns Studenten den De-Facto-Standard darstellt. Zudem erleichtert es das Arbeiten im Team doch sehr.&lt;/p&gt;
&lt;p&gt;Formatierungen sind jedoch immer ein Kampf. Daher wollte ich versuchen, &lt;a href=&#34;https://www.latex-project.org&#34;&gt;LaTeX&lt;/a&gt; für diese Arbeit einzusetzen. Ich kannte &lt;em&gt;LaTeX&lt;/em&gt; vor allem aus mathematischen Kursen an der Uni und hatte schon oft gehört, dass es Setzen (von &lt;a href=&#34;https://de.wikipedia.org/wiki/Satz_(Druck)&#34;&gt;Satz&lt;/a&gt;) deutlich vereinfachen soll. Aber nicht nur das Schreiben mathematischer Arbeiten macht es deutlich angenehmer, durch das einbinden einiger zusätzlicher Pakete werden wissenschaftliche Texte zum Kinderspiel.&lt;/p&gt;
&lt;h2 id=&#34;über-latex&#34;&gt;Über LaTeX&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;LaTeX&lt;/strong&gt; [ˈlaːtɛç] ist ein Softwarepaket, das die Benutzung des Textsatzsystems TeX mit Hilfe von Makros vereinfacht. &lt;em&gt;LaTeX&lt;/em&gt; wurde Anfang der 1980er Jahre von &lt;em&gt;Leslie Lamport&lt;/em&gt; entwickelt.Der Name bedeutet so viel wie &lt;em&gt;Lamport TeX&lt;/em&gt;. Die Entwicklung wurde seit den 1990er Jahren von einer Anzahl Entwicklern weitergeführt. Heute ist &lt;em&gt;LaTeX&lt;/em&gt; die populärste Methode, &lt;em&gt;TeX&lt;/em&gt; zu verwenden.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;— &lt;!-- raw HTML omitted --&gt;&lt;a href=&#34;https://de.wikipedia.org/wiki/LaTeX&#34;&gt;Wikipedia: LaTeX&lt;/a&gt;&lt;!-- raw HTML omitted --&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;LaTeX&lt;/em&gt; funktioniert ähnlich wie &lt;em&gt;HTML&lt;/em&gt; oder &lt;em&gt;Markdown&lt;/em&gt;: Zunächst wird die Formatierung von Text getrennt. Bei WYSIWYG&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;-Textverarbeitungsprogrammen wie &lt;em&gt;Word&lt;/em&gt; sieht man direkt, wie das gedruckte Dokument hinterher aussehen wird. Das macht es für viele Nutzer einfacher, zwingt sie aber auch dazu, sich direkt und unmittelbar mit der Formatierung zu beschäftigen. &lt;em&gt;LaTeX&lt;/em&gt; trennt dies zunächst, gibt aber dennoch eine übersichtliche Struktur vor. Zudem sind die Standard Formatvorlagen deutlich schlichter und zumindest für mich wesentlich ansprechender als die von &lt;em&gt;Word&lt;/em&gt; (Warum ist alles blau und wieso &lt;em&gt;Calibri&lt;/em&gt;?!). Ja, die Voreinstellungen von &lt;em&gt;Word&lt;/em&gt; lassen sich überschreiben, aber das muss man auch erstmal machen.&lt;/p&gt;
&lt;p&gt;Funktionen wie ein Inhalts- oder Literaturvrezeichnis lassen sich in &lt;em&gt;Word&lt;/em&gt; zwar auch realisieren, sind in &lt;em&gt;LaTeX&lt;/em&gt; wesentlich simpler. Zudem lässt sich &lt;em&gt;LaTeX&lt;/em&gt; durch Pakete nahezu unendlich erweitern und deckt dadruch auch jeden noch so speziellen Fall ab.&lt;/p&gt;
&lt;p&gt;Ein weiterer Punkt, warum ich &lt;em&gt;LaTeX&lt;/em&gt; bevorzuge ist, dass ich jeden Texteditor benutzen kann. Ich nutze am liebsten &lt;em&gt;VS Code&lt;/em&gt;, aber natürlich kann jeder beliebige Editor verwendet werden.&lt;/p&gt;
&lt;p&gt;Das einzige, was mit &lt;em&gt;Word&lt;/em&gt; sicher einfacher wäre ist das einbinden und beschriften von Grafiken. Da ich einige davor in meine Projektarbeit verwende, brauchte ich hierfür eine Lösung. Diese habe ich mit &lt;a href=&#34;https://inkscape.org/de/&#34;&gt;Inkscape&lt;/a&gt; gefunden. Hiermir lassen sich Bilder bearbeiten und beschriften und anschließend als &lt;em&gt;LaTeX&lt;/em&gt;-Dokument speichern. Diese lassen sich dann ganz einfach einbinden.&lt;/p&gt;
&lt;h2 id=&#34;fazit&#34;&gt;Fazit&lt;/h2&gt;
&lt;p&gt;Für wen &lt;em&gt;Word&lt;/em&gt; und ähnliches schon immer eine Qual war oder wer Vorerfahrung mit Texteditoren und Skriptsprachen hat, dem kann ich &lt;em&gt;LaTeX&lt;/em&gt; nur ans Herz legen. Ganz einfach lassen sich wunderschöne Dokumente herzaubern. Vor allem der Font &lt;em&gt;Computer Modern&lt;/em&gt; hat es mir sehr angetan. Eventuell werde ich die Projektarbeit demnächst hier hochladen.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;technische-spezifikationen&#34;&gt;Technische Spezifikationen&lt;/h2&gt;
&lt;p&gt;Kurzer Nachtrag über meine Arbeitsweise mit &lt;em&gt;LaTeX&lt;/em&gt;: Als Texteditor benutze ich &lt;a href=&#34;https://code.visualstudio.com&#34;&gt;VS Code&lt;/a&gt;, da ich diesen super übersichtlich finde und vor allem die Erweiterungsmöglichkeiten sehr schätze. Für &lt;em&gt;LaTeX&lt;/em&gt; sind dies vor allem &lt;a href=&#34;https://github.com/James-Yu/LaTeX-Workshop&#34;&gt;LaTeX Workshop&lt;/a&gt; und natürlich &lt;a href=&#34;https://git-scm.com&#34;&gt;git&lt;/a&gt; (vorinstalliert). Des Weiteren benutze ich die &lt;a href=&#34;https://www.tug.org/mactex/&#34;&gt;MacTeX-Distribution&lt;/a&gt;, welche ich über &lt;a href=&#34;https://brew.sh&#34;&gt;Homebrew&lt;/a&gt; installiert habe.&lt;/p&gt;
&lt;h3 id=&#34;verwendete-pakete&#34;&gt;Verwendete Pakete&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;babel&lt;/strong&gt;: Sorgt für die Unterstützung verschiedener Sprachen. Ich schreibe die Projektarbeit zwar auf Englisch, jedoch brauche ich ab und zu mal Deutsche Begriffe und damiteinhergehend Umlaute etc.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;biblatex&lt;/strong&gt;: Verbessertes Literaturverzeichnis, alternative zu &lt;strong&gt;bibtex&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;booktabs&lt;/strong&gt;: Verschönert und vereinfacht Tabellen in &lt;em&gt;LaTeX&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;chemformula&lt;/strong&gt;: Erleichtert das Setzen von chemischen Formeln enorm und sorgt dafür, dass diese auch richtig angezeigt werden.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;hyperref&lt;/strong&gt;: Für Links und Metadaten.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;longtable&lt;/strong&gt;: Die verwendeten Materialien habe ich alle in riesigen Listen. &lt;em&gt;LaTeX&lt;/em&gt; kann standardmäßig nicht besonders gut mit großen Tabellen umgehen, dieses Paket hilft dabei.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;microtype&lt;/strong&gt;: Lässt alles schöner aussehen, praktisch schwarze Magie.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;siunitx&lt;/strong&gt;: Das wahrscheinlich beste Paket überhaupt, simple aber hat Power. Sorgt für perfektes setzen von Einheiten, mit oder ohne vorangehenden Wert. Zudem enthält es eine Funktion, die Werte in Tabellen um den Dezimalpunkt anordnen kann. Ein Traum.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;textgreek&lt;/strong&gt;: Erleichtert das verwenden von griechischen Buchstaben im Text.&lt;/li&gt;
&lt;li&gt;Zusätzliche Pakete die ich an der Stelle nicht weiter erleutern werden: &lt;strong&gt;color&lt;/strong&gt;, &lt;strong&gt;csquotes&lt;/strong&gt;, &lt;strong&gt;fontenc&lt;/strong&gt;, &lt;strong&gt;glossaries&lt;/strong&gt;, &lt;strong&gt;graphicx&lt;/strong&gt;, &lt;strong&gt;tikz&lt;/strong&gt; und &lt;strong&gt;tocbibind&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;What you see is what you get.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
</description>
    </item>
    
  </channel>
</rss>
