cd _site
git add .
-if ! git diff --cached; then
- # There are changes
- git commit -m "site upload"
-fi
+git diff --cached
+git commit -m "site upload"
-rsync ./ www.ralfj.de:/srv/www.ralfj.de/docroot/ -aP --exclude .git
+# To include `projects/rust-101/index.html` while excluding the rest of that folder, we have to
+# write the exclusion as ".../*", or else rsync would not even descend into that directory.
+rsync ./ www.ralfj.de:/srv/www.ralfj.de/docroot/ -aP --delete \
+ --include projects/rust-101/index.html \
+ --exclude .git --exclude cs --exclude upload --exclude "projects/rust-101/*"