<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Daily Post from Richard</title><link>https://rzliu.github.io/posts/</link><description>Recent content on Daily Post from Richard</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Mon, 20 Apr 2026 10:49:06 -0400</lastBuildDate><atom:link href="https://rzliu.github.io/posts/index.xml" rel="self" type="application/rss+xml"/><item><title>Video Edit Quicktime Player</title><link>https://rzliu.github.io/posts/posts/video-edit-quicktime-player/</link><pubDate>Mon, 20 Apr 2026 10:49:06 -0400</pubDate><guid>https://rzliu.github.io/posts/posts/video-edit-quicktime-player/</guid><description>&lt;h1 id="editing-video-with-quicktime-player-on-mac"&gt;Editing Video with QuickTime Player on Mac&lt;/h1&gt;
&lt;p&gt;QuickTime Player is the free video player that ships with every Mac. Most people only use it to watch clips, but it also includes a surprisingly capable set of built-in editing tools — enough to handle trimming, splitting, rearranging, rotating, and exporting video without ever opening iMovie or Final Cut Pro. This guide walks through everything QuickTime Player can do as an editor, when it&amp;rsquo;s the right tool, and when you should reach for something more powerful.&lt;/p&gt;</description></item><item><title>Git Cheatsheet</title><link>https://rzliu.github.io/posts/posts/git-cheatsheet/</link><pubDate>Sun, 19 Apr 2026 14:32:29 -0400</pubDate><guid>https://rzliu.github.io/posts/posts/git-cheatsheet/</guid><description>&lt;h2 id="git-cheatsheet"&gt;git-cheatsheet&lt;/h2&gt;
&lt;p&gt;&lt;a href="https://rzliu.github.io/posts/uploads/git-cheatsheet.pdf"&gt;Git Cheatsheet PDF&lt;/a&gt;&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;Git Cheat Sheet
Getting Started
Start a new repo:

git init
Clone an existing repo:

git clone &amp;lt;url&amp;gt;
Prepare to Commit
Add untracked file or unstaged changes:

git add &amp;lt;file&amp;gt;
Add all untracked files and unstaged changes:

git add .
Choose which parts of a file to stage:

git add -p
Move file:

git mv &amp;lt;old&amp;gt; &amp;lt;new&amp;gt;
Delete file:

git rm &amp;lt;file&amp;gt;
Tell Git to forget about a file without deleting it:

git rm --cached &amp;lt;file&amp;gt;
Unstage one file:

git reset &amp;lt;file&amp;gt;
Unstage everything:

git reset
Check what you added:

git status
Make Commits
Make a commit (and open text editor to write message):

git commit
Make a commit:

git commit -m &amp;#39;message&amp;#39;
Commit all unstaged changes:

git commit -am &amp;#39;message&amp;#39;
Move Between Branches
Switch branches:

git switch &amp;lt;name&amp;gt;
OR
git checkout &amp;lt;name&amp;gt;
Create a branch:

git switch -c &amp;lt;name&amp;gt;
OR
git checkout -b &amp;lt;name&amp;gt;
List branches:

git branch
List branches by most recently committed to:

git branch --sort=-committerdate
Delete a branch:

git branch -d &amp;lt;name&amp;gt;
Force delete a branch:

git branch -D &amp;lt;name&amp;gt;
Diff Staged/Unstaged Changes
Diff all staged and unstaged changes:

git diff HEAD
Diff just staged changes:

git diff --staged
Diff just unstaged changes:

git diff
Diff Commits
Show diff between a commit and its parent:

git show &amp;lt;commit&amp;gt;
Diff two commits:

git diff &amp;lt;commit&amp;gt; &amp;lt;commit&amp;gt;
Diff one file since a commit:

git diff &amp;lt;commit&amp;gt; &amp;lt;file&amp;gt;
Show a summary of a diff:

git diff &amp;lt;commit&amp;gt; --stat
git show &amp;lt;commit&amp;gt; --stat
Ways to refer to a commit
Every time we say &amp;lt;commit&amp;gt;, you can use any of these:

a branch
main
a tag
v0.1
a commit ID
3e887ab
a remote branch
origin/main
current commit
HEAD
3 commits ago
HEAD^^^ or HEAD~3
Discard Your Changes
Delete unstaged changes to one file:

git restore &amp;lt;file&amp;gt;
OR
git checkout &amp;lt;file&amp;gt;
Delete all staged and unstaged changes to one file:

git restore --staged --worktree &amp;lt;file&amp;gt;
OR
git checkout HEAD &amp;lt;file&amp;gt;
Delete all staged and unstaged changes:

git reset --hard
Delete untracked files:

git clean
&amp;#39;Stash&amp;#39; all staged and unstaged changes:

git stash
Edit History
&amp;#34;Undo&amp;#34; the most recent commit (keep your working directory the same):

git reset HEAD^
Squash the last 5 commits into one:

git rebase -i HEAD~6
Then change &amp;#34;pick&amp;#34; to &amp;#34;fixup&amp;#34; for any commit you want to combine with the previous one
Undo a failed rebase:

git reflog BRANCHNAME
Then manually find the right commit ID in the reflog, then run:
git reset --hard &amp;lt;commit&amp;gt;
Change a commit message (or add a file you forgot):

git commit --amend
Code Archaeology
Look at a branch&amp;#39;s history:

git log main
git log --graph main
git log --oneline
Show every commit that modified a file:

git log &amp;lt;file&amp;gt;
Show every commit that modified a file, including before it was renamed:

git log --follow &amp;lt;file&amp;gt;
Find every commit that added or removed some text:

git log -G banana
Show who last changed each line of a file:

git blame &amp;lt;file&amp;gt;
Combine Diverged Branches
Combine with rebase:

git switch banana
git rebase main
Before:

After:

Combine with merge:

git switch main
git merge banana
Before:

After:

Combine with squash merge:

git switch main
git merge --squash banana
git commit
Before:

After:

Bring a branch up to date with another branch (aka &amp;#34;fast-forward merge&amp;#34;):

git switch main
git merge banana
Before:

After:

Copy one commit onto the current branch:

git cherry-pick &amp;lt;commit&amp;gt;
Before:

After:

Restore an Old File
Get the version of a file from another commit:

git checkout &amp;lt;commit&amp;gt; &amp;lt;file&amp;gt;
OR
git restore &amp;lt;file&amp;gt; --source &amp;lt;commit&amp;gt;
Add a Remote
git remote add &amp;lt;name&amp;gt; &amp;lt;url&amp;gt;
Push Your Changes
Push the main branch to the remote origin:

git push origin main
Push the current branch to its remote &amp;#34;tracking branch&amp;#34;:

git push
Push a branch that you&amp;#39;ve never pushed before:

git push -u origin &amp;lt;name&amp;gt;
Force push:

git push --force-with-lease
Push tags:

git push --tags
Pull Changes
Fetch changes (but don&amp;#39;t change any of your local branches):

git fetch origin main
Fetch changes and then rebase your current branch:

git pull --rebase
Fetch changes and then merge them into your current branch:

git pull origin main
OR
git pull
Configure Git
Set a config option:

git config user.name &amp;#39;Your Name&amp;#39;
Set option globally:

git config --global ...
Add an alias:

git config alias.st status
See all possible config options:

man git-config
Important Files
Local git config:

.git/config
Global git config:

~/.gitconfig
List of files to ignore:

.gitignore
&lt;/code&gt;&lt;/pre&gt;</description></item><item><title>Update Content</title><link>https://rzliu.github.io/posts/posts/update-content/</link><pubDate>Sun, 19 Apr 2026 13:39:11 -0400</pubDate><guid>https://rzliu.github.io/posts/posts/update-content/</guid><description>&lt;p&gt;The general method for adding or updating content in Hugo revolves around its CLI and local development server, typically using Markdown files organized within a content/ directory. [1, 2, 3, 4, 5]&lt;/p&gt;
&lt;h2 id="1-adding-new-content"&gt;1. Adding New Content&lt;/h2&gt;
&lt;p&gt;To add a new page or post, use the hugo new command from your project&amp;rsquo;s root directory. This command automatically populates the file with &amp;ldquo;front matter&amp;rdquo; (metadata) based on your site&amp;rsquo;s archetypes. [3, 6]&lt;/p&gt;</description></item><item><title>My First Post</title><link>https://rzliu.github.io/posts/posts/my-first-post/</link><pubDate>Wed, 15 Apr 2026 12:22:51 -0400</pubDate><guid>https://rzliu.github.io/posts/posts/my-first-post/</guid><description>&lt;h2 id="introduction"&gt;Introduction&lt;/h2&gt;
&lt;p&gt;This is &lt;strong&gt;bold&lt;/strong&gt; text, and this is &lt;em&gt;emphasized&lt;/em&gt; text.&lt;/p&gt;
&lt;p&gt;Visit the &lt;a href="https://gohugo.io"&gt;Hugo&lt;/a&gt; website!&lt;/p&gt;</description></item></channel></rss>