<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="../assets/xml/rss.xsl" media="all"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>ramdyne (Posts about website)</title><link>https://www.ramdyne.nl/</link><description></description><atom:link href="https://www.ramdyne.nl/categories/website.xml" rel="self" type="application/rss+xml"></atom:link><language>en</language><lastBuildDate>Sat, 07 Mar 2026 00:09:01 GMT</lastBuildDate><generator>Nikola (getnikola.com)</generator><docs>http://blogs.law.harvard.edu/tech/rss</docs><item><title>Keeping website sources safe</title><link>https://www.ramdyne.nl/posts/keeping-website-sources-safe/</link><dc:creator>ramdyne</dc:creator><description>&lt;p&gt;Last Friday I was thinking about making a backup of the nikola sources for my
website. I have more than 12 years of blog posts in the archive now. While
most of the contents are not worth much, there are some pieces I'd rather not
lose.&lt;/p&gt;
&lt;p&gt;Using normal backup procedures seemed boring, so I started thinking of other
ways. Realising that most of the files were just basic text files some kind of
version control system seemed appropriate. Since I had no intention of running
my own VCS server &lt;a class="reference external" href="https://github.com/"&gt;Github&lt;/a&gt; seemed like a cool option,
especially since it has private repositories.&lt;/p&gt;
&lt;p&gt;So every time I update the site, the deploy step not only &lt;a class="reference external" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe.html"&gt;updates (using
rsync)&lt;/a&gt; the webserver, it also calls on git to push the changes towards my private
Github repository.&lt;/p&gt;
&lt;p&gt;So for this post the procedure looked something like this (Edited for brevity
and a little bit of obfuscation):&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code text"&gt;&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-1" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-1" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-1"&gt;&lt;/a&gt;yyyyyyy@delphic:~/website/src/www.ramdyne.nl/src$ nikola new_post
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-2" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-2" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-2"&gt;&lt;/a&gt;Creating New Post
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-3" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-3" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-3"&gt;&lt;/a&gt;-----------------
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-4" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-4" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-4"&gt;&lt;/a&gt;Enter title: Keeping website sources safe
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-5" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-5" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-5"&gt;&lt;/a&gt;Scanning posts.....done!
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-6" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-6" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-6"&gt;&lt;/a&gt;Your post's text is at:  posts/keeping-website-sources-safe.rst
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-7" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-7" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-7"&gt;&lt;/a&gt;yyyyyyy@delphic:~/website/src/www.ramdyne.nl/src$ vi posts/keeping-website-sources-safe.rst
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-8" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-8" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-8"&gt;&lt;/a&gt;yyyyyyy@delphic:~/website/src/www.ramdyne.nl/src$ nikola build
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-9" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-9" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-9"&gt;&lt;/a&gt;Scanning posts.....done!
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-10" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-10" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-10"&gt;&lt;/a&gt;.  render_site:../output/categories/index.html
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-11" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-11" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-11"&gt;&lt;/a&gt;.  render_posts:cache/posts/keeping-website-sources-safe.html
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-12" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-12" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-12"&gt;&lt;/a&gt;.  render_indexes:../output/index.html
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-13" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-13" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-13"&gt;&lt;/a&gt;.  render_rss:../output/rss.xml
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-14" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-14" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-14"&gt;&lt;/a&gt;.  render_pages:../output/posts/keeping-website-sources-safe.html
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-15" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-15" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-15"&gt;&lt;/a&gt;.  render_tags:../output/categories/stack.xml
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-16" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-16" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-16"&gt;&lt;/a&gt;.  sitemap:../output/sitemap.xml
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-17" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-17" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-17"&gt;&lt;/a&gt;yyyyyyy@delphic:~/website/src/www.ramdyne.nl/src$ nikola deploy
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-18" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-18" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-18"&gt;&lt;/a&gt;Scanning posts.....done!
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-19" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-19" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-19"&gt;&lt;/a&gt;==&amp;gt; rsync -rav ../output/*
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-20" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-20" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-20"&gt;&lt;/a&gt;ramdyne@xxxxxx.org:/home/zzzzzz/www/ramdyne.nl/www
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-21" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-21" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-21"&gt;&lt;/a&gt;Password:
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-22" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-22" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-22"&gt;&lt;/a&gt;sending incremental file list
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-23" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-23" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-23"&gt;&lt;/a&gt;index-20.html
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-24" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-24" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-24"&gt;&lt;/a&gt;index.html
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-25" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-25" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-25"&gt;&lt;/a&gt;rss.xml
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-26" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-26" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-26"&gt;&lt;/a&gt;sitemap.xml
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-27" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-27" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-27"&gt;&lt;/a&gt;posts/
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-28" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-28" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-28"&gt;&lt;/a&gt;posts/keeping-website-sources-safe.html
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-29" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-29" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-29"&gt;&lt;/a&gt;
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-30" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-30" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-30"&gt;&lt;/a&gt;sent 526893 bytes  received 85809 bytes  136156.00 bytes/sec
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-31" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-31" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-31"&gt;&lt;/a&gt;total size is 18639132  speedup is 30.42
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-32" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-32" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-32"&gt;&lt;/a&gt;==&amp;gt; /home/yyyyyyy/website/src/www.ramdyne.nl/git-push-website-to-master.sh
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-33" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-33" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-33"&gt;&lt;/a&gt;[master fbadf78] Another commit by nikola deploy
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-34" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-34" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-34"&gt;&lt;/a&gt; 448 files changed, 2205 insertions(+), 998 deletions(-)
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-35" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-35" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-35"&gt;&lt;/a&gt; create mode 100644 output/.htaccess
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-36" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-36" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-36"&gt;&lt;/a&gt; rewrite output/assets/js/tag_cloud_data.json (78%)
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-37" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-37" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-37"&gt;&lt;/a&gt; create mode 100644 output/categories/git.html
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-38" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-38" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-38"&gt;&lt;/a&gt; create mode 100644 output/categories/git.xml
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-39" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-39" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-39"&gt;&lt;/a&gt; create mode 100644 output/categories/github.html
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-40" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-40" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-40"&gt;&lt;/a&gt; create mode 100644 output/categories/github.xml
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-41" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-41" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-41"&gt;&lt;/a&gt; rewrite output/categories/website.xml (80%)
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-42" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-42" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-42"&gt;&lt;/a&gt; create mode 100644 output/posts/keeping-website-sources-safe.html
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-43" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-43" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-43"&gt;&lt;/a&gt; create mode 100644
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-44" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-44" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-44"&gt;&lt;/a&gt; src/cache/posts/keeping-website-sources-safe.html
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-45" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-45" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-45"&gt;&lt;/a&gt; create mode 100644 src/posts/keeping-website-sources-safe.rst
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-46" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-46" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-46"&gt;&lt;/a&gt;Username for 'https://github.com': xxxxx
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-47" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-47" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-47"&gt;&lt;/a&gt;Password for 'https://xxxxx@github.com':
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-48" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-48" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-48"&gt;&lt;/a&gt;Counting objects: 890, done.
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-49" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-49" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-49"&gt;&lt;/a&gt;Delta compression using up to 4 threads.
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-50" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-50" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-50"&gt;&lt;/a&gt;Compressing objects: 100% (459/459), done.
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-51" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-51" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-51"&gt;&lt;/a&gt;Writing objects: 100% (459/459), 129.89 KiB, done.
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-52" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-52" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-52"&gt;&lt;/a&gt;Total 459 (delta 444), reused 0 (delta 0)
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-53" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-53" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-53"&gt;&lt;/a&gt;To https://github.com/ramdyne/websites-ramdyne.nl.git
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-54" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-54" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-54"&gt;&lt;/a&gt; 3c519ad..fbadf85  master -&amp;gt; master
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-55" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-55" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-55"&gt;&lt;/a&gt;Successful deployment
&lt;a id="rest_code_c97ada8e5a0f4c3294a3aff255144c39-56" name="rest_code_c97ada8e5a0f4c3294a3aff255144c39-56" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_c97ada8e5a0f4c3294a3aff255144c39-56"&gt;&lt;/a&gt;yyyyyyyy@delphic:~/website/src/www.ramdyne.nl/src$
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;The eagle eyed viewers will have noticed a small script being used to do all
the git steps:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code text"&gt;&lt;a id="rest_code_6f20005229b748ea99a060f3e6207a0f-1" name="rest_code_6f20005229b748ea99a060f3e6207a0f-1" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_6f20005229b748ea99a060f3e6207a0f-1"&gt;&lt;/a&gt;yyyyyyyy@delphic:~/website/src/www.ramdyne.nl/cat git-push-website-to-master.sh
&lt;a id="rest_code_6f20005229b748ea99a060f3e6207a0f-2" name="rest_code_6f20005229b748ea99a060f3e6207a0f-2" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_6f20005229b748ea99a060f3e6207a0f-2"&gt;&lt;/a&gt;#!/bin/sh
&lt;a id="rest_code_6f20005229b748ea99a060f3e6207a0f-3" name="rest_code_6f20005229b748ea99a060f3e6207a0f-3" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_6f20005229b748ea99a060f3e6207a0f-3"&gt;&lt;/a&gt;cd /home/yyyyyyy/website/src/www.ramdyne.nl/
&lt;a id="rest_code_6f20005229b748ea99a060f3e6207a0f-4" name="rest_code_6f20005229b748ea99a060f3e6207a0f-4" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_6f20005229b748ea99a060f3e6207a0f-4"&gt;&lt;/a&gt;/usr/bin/git add '*'
&lt;a id="rest_code_6f20005229b748ea99a060f3e6207a0f-5" name="rest_code_6f20005229b748ea99a060f3e6207a0f-5" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_6f20005229b748ea99a060f3e6207a0f-5"&gt;&lt;/a&gt;/usr/bin/git commit -m "Another commit by nikola deploy"
&lt;a id="rest_code_6f20005229b748ea99a060f3e6207a0f-6" name="rest_code_6f20005229b748ea99a060f3e6207a0f-6" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_6f20005229b748ea99a060f3e6207a0f-6"&gt;&lt;/a&gt;/usr/bin/git push origin master
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;The script (and the cd step in the script) are needed because of the way the
nikola deploy steps work. You can't do cool stuff like cd in the deploy steps
themselves, if I understood &lt;a class="reference external" href="https://groups.google.com/d/msg/nikola-discuss/aDbsPtu4pNc/pqS8SWt1-SoJ"&gt;this&lt;/a&gt; post correctly.&lt;/p&gt;
&lt;p&gt;Now I only need to find a way to not have a boring fixed commit message for
every change ("Another commit by nikola deploy"), preferably it would say what
had been last updated or something like that. Or just ask me for a commit
message.&lt;/p&gt;
&lt;p&gt;The folder structure I am using now for my website sources is a little
different from the default nikola setup, so  can always stop not keeping all
changes to the nikola output. Keeping sources and output in git is kind of
redundant, isn't it.&lt;/p&gt;
&lt;p&gt;Nikola default (with site in ~/Documents/site:&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code text"&gt;&lt;a id="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-1" name="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-1" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-1"&gt;&lt;/a&gt;~/
&lt;a id="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-2" name="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-2" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-2"&gt;&lt;/a&gt;|- Documents/
&lt;a id="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-3" name="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-3" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-3"&gt;&lt;/a&gt;    |-site/
&lt;a id="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-4" name="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-4" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-4"&gt;&lt;/a&gt;        |-cache/
&lt;a id="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-5" name="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-5" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-5"&gt;&lt;/a&gt;        |-files/
&lt;a id="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-6" name="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-6" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-6"&gt;&lt;/a&gt;        |-galleries/
&lt;a id="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-7" name="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-7" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-7"&gt;&lt;/a&gt;        |-listings/
&lt;a id="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-8" name="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-8" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-8"&gt;&lt;/a&gt;        |-output/
&lt;a id="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-9" name="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-9" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-9"&gt;&lt;/a&gt;        |-posts/
&lt;a id="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-10" name="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-10" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-10"&gt;&lt;/a&gt;        |-stories/
&lt;a id="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-11" name="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-11" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-11"&gt;&lt;/a&gt;        |-themes/
&lt;a id="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-12" name="rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-12" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_0edfe79ff19d4f98af12bfa4b1b6c650-12"&gt;&lt;/a&gt;        |-conf.py
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;My current directory structure&lt;/p&gt;
&lt;div class="code"&gt;&lt;pre class="code text"&gt;&lt;a id="rest_code_bc461fef508245d38b29a269a5ef0735-1" name="rest_code_bc461fef508245d38b29a269a5ef0735-1" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_bc461fef508245d38b29a269a5ef0735-1"&gt;&lt;/a&gt;~/
&lt;a id="rest_code_bc461fef508245d38b29a269a5ef0735-2" name="rest_code_bc461fef508245d38b29a269a5ef0735-2" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_bc461fef508245d38b29a269a5ef0735-2"&gt;&lt;/a&gt;|- Documents/
&lt;a id="rest_code_bc461fef508245d38b29a269a5ef0735-3" name="rest_code_bc461fef508245d38b29a269a5ef0735-3" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_bc461fef508245d38b29a269a5ef0735-3"&gt;&lt;/a&gt;    |-site/
&lt;a id="rest_code_bc461fef508245d38b29a269a5ef0735-4" name="rest_code_bc461fef508245d38b29a269a5ef0735-4" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_bc461fef508245d38b29a269a5ef0735-4"&gt;&lt;/a&gt;        |-output/
&lt;a id="rest_code_bc461fef508245d38b29a269a5ef0735-5" name="rest_code_bc461fef508245d38b29a269a5ef0735-5" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_bc461fef508245d38b29a269a5ef0735-5"&gt;&lt;/a&gt;        |-src/
&lt;a id="rest_code_bc461fef508245d38b29a269a5ef0735-6" name="rest_code_bc461fef508245d38b29a269a5ef0735-6" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_bc461fef508245d38b29a269a5ef0735-6"&gt;&lt;/a&gt;            |-cache/
&lt;a id="rest_code_bc461fef508245d38b29a269a5ef0735-7" name="rest_code_bc461fef508245d38b29a269a5ef0735-7" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_bc461fef508245d38b29a269a5ef0735-7"&gt;&lt;/a&gt;            |-files/
&lt;a id="rest_code_bc461fef508245d38b29a269a5ef0735-8" name="rest_code_bc461fef508245d38b29a269a5ef0735-8" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_bc461fef508245d38b29a269a5ef0735-8"&gt;&lt;/a&gt;            |-galleries/
&lt;a id="rest_code_bc461fef508245d38b29a269a5ef0735-9" name="rest_code_bc461fef508245d38b29a269a5ef0735-9" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_bc461fef508245d38b29a269a5ef0735-9"&gt;&lt;/a&gt;            |-listings/
&lt;a id="rest_code_bc461fef508245d38b29a269a5ef0735-10" name="rest_code_bc461fef508245d38b29a269a5ef0735-10" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_bc461fef508245d38b29a269a5ef0735-10"&gt;&lt;/a&gt;            |-posts/
&lt;a id="rest_code_bc461fef508245d38b29a269a5ef0735-11" name="rest_code_bc461fef508245d38b29a269a5ef0735-11" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_bc461fef508245d38b29a269a5ef0735-11"&gt;&lt;/a&gt;            |-stories/
&lt;a id="rest_code_bc461fef508245d38b29a269a5ef0735-12" name="rest_code_bc461fef508245d38b29a269a5ef0735-12" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_bc461fef508245d38b29a269a5ef0735-12"&gt;&lt;/a&gt;            |-themes/
&lt;a id="rest_code_bc461fef508245d38b29a269a5ef0735-13" name="rest_code_bc461fef508245d38b29a269a5ef0735-13" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_bc461fef508245d38b29a269a5ef0735-13"&gt;&lt;/a&gt;            |-conf.py
&lt;a id="rest_code_bc461fef508245d38b29a269a5ef0735-14" name="rest_code_bc461fef508245d38b29a269a5ef0735-14" href="https://www.ramdyne.nl/posts/keeping-website-sources-safe/#rest_code_bc461fef508245d38b29a269a5ef0735-14"&gt;&lt;/a&gt;        |-git-push-website-to-master.sh
&lt;/pre&gt;&lt;/div&gt;</description><category>english</category><category>git</category><category>github</category><category>nikola</category><category>site</category><category>website</category><guid>https://www.ramdyne.nl/posts/keeping-website-sources-safe/</guid><pubDate>Sun, 29 Sep 2013 21:00:54 GMT</pubDate></item><item><title>Moved</title><link>https://www.ramdyne.nl/posts/moved/</link><dc:creator>ramdyne</dc:creator><description>&lt;dl class="simple"&gt;
&lt;dt&gt;..raw:: html&lt;/dt&gt;
&lt;dd&gt;&lt;p&gt;&amp;lt;html&amp;gt;&amp;lt;body&amp;gt;&amp;lt;p&amp;gt;So this website has moved from an old school Dell server running FreeBSD to a virtual server somewhere or other running on some form of hardware. I have no idea. Any issues should resolve themselves over the next few days.&amp;lt;/p&amp;gt;&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;&lt;/p&gt;
&lt;/dd&gt;
&lt;/dl&gt;</description><category>english</category><category>general</category><category>moved</category><category>service</category><category>site</category><category>website</category><guid>https://www.ramdyne.nl/posts/moved/</guid><pubDate>Mon, 05 Nov 2012 23:33:50 GMT</pubDate></item><item><title>Apologies and upgrades</title><link>https://www.ramdyne.nl/posts/apologies-and-upgrades/</link><dc:creator>ramdyne</dc:creator><description>&lt;dl class="simple"&gt;
&lt;dt&gt;..raw:: html&lt;/dt&gt;
&lt;dd&gt;&lt;p&gt;&amp;lt;html&amp;gt;&amp;lt;body&amp;gt;&amp;lt;p&amp;gt;If you've wondered why this website didn't work very well the last few days, that's because I forgot to copy a .htaccess file after I updated Wordpress. Sorry!&amp;lt;/p&amp;gt;&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;&lt;/p&gt;
&lt;/dd&gt;
&lt;/dl&gt;</description><category>apologies</category><category>english</category><category>general</category><category>update</category><category>website</category><category>wordpress</category><guid>https://www.ramdyne.nl/posts/apologies-and-upgrades/</guid><pubDate>Tue, 01 Sep 2009 15:57:21 GMT</pubDate></item></channel></rss>