Skip to content

Instantly share code, notes, and snippets.

View cooperpellaton's full-sized avatar
👨‍🎨
Making memes!

Cooper Pellaton cooperpellaton

👨‍🎨
Making memes!
View GitHub Profile
#!/bin/bash
# Change the date under CUTOFF_DATE to change how far back you want to delete
# Install the GitHub CLI tool by following the instructions in the official documentation: https://cli.github.com/manual/installation
# Make sure you auth first to github with 'gh auth login'
REPO_OWNER="OWNER"
REPO_NAME="REPO_NAME"
CUTOFF_DATE=$(date --date='30 days ago' +'%Y-%m-%dT%H:%M:%SZ')
PAGE=1
@nolenroyalty
nolenroyalty / go-to-sleep.sh
Last active January 2, 2025 21:09
A script I run via cron that prompts me to sleep at night
#!/usr/bin/env bash -x
# TO USE:
# 1. MAKE A CONFIG FILE AT ~/.go-to-bed
# it should look like this (don't include hashes in file, this will nag you starting at 12:16 AM until 6:00 AM)
# START_TIME:0.16
# END_TIME:6.0
# HUSHED_UNTIL:2023-11-23T1:40:00
#
# 2. SAVE THIS SCRIPT SOMEWHERE, maybe ~/bin/go-to-bed
@mitchellh
mitchellh / merge_vs_rebase_vs_squash.md
Last active April 30, 2026 13:51
Merge vs. Rebase vs. Squash

I get asked pretty regularly what my opinion is on merge commits vs rebasing vs squashing. I've typed up this response so many times that I've decided to just put it in a gist so I can reference it whenever it comes up again.

I use merge, squash, rebase all situationally. I believe they all have their merits but their usage depends on the context. I think anyone who says any particular strategy is the right answer 100% of the time is wrong, but I think there is considerable acceptable leeway in when you use each. What follows is my personal and professional opinion:

@spf13
spf13 / script.js
Last active January 25, 2026 02:56 — forked from danmactough/script.js
Download all your Kindle books before Feb 26, 2025
// 1. Log in to your Amazon account
// 2. Go to your Content Library > Books - https://www.amazon.com/hz/mycd/digital-console/contentlist/booksAll/dateDsc/
// 3. Open your browser's Javascript console
// 4. For each page of books, paste this script into the console
(async function () {
// Close the notification if it appears
function closeNotification() {
const notifClose = document.querySelector("span#notification-close");
if (notifClose) {
@elithrar
elithrar / jj.md
Last active April 21, 2026 03:45
a jj cheat sheet for git users

jj Cheat Sheet for Git Users

🗣️ this is a useful guide to help you memorize + better understand how Jujutsu works, but it's not a replacement for learning the mental model or deeper strategies!

Core Concepts

  • No staging area — all changes in the working copy are automatically part of the current “change”
  • Changes vs commits — jj tracks “changes” (mutable) that become “commits” (immutable) when pushed
  • @ — a symbol pointing to the current working copy change (like HEAD, but for changes)
  • @- — the parent of @