Entering text in the terminal is complicated
Julia Evans
by Julia Evans
2w ago
The other day I asked what folks on Mastodon find confusing about working in the terminal, and one thing that stood out to me was “editing a command you already typed in”. This really resonated with me: even though entering some text and editing it is a very “basic” task, it took me maybe 15 years of using the terminal every single day to get used to using Ctrl+A to go to the beginning of the line (or Ctrl+E for the end). So let’s talk about why entering text might be hard! I’ll also share a few tips that I wish I’d learned earlier. it’s very inconsistent between programs A big part of what ma ..read more
Visit website
Reasons to use your shell's job control
Julia Evans
by Julia Evans
2w ago
Hello! Today someone on Mastodon asked about job control (fg, bg, Ctrl+z, wait, etc). It made me think about how I don’t use my shell’s job control interactively very often: usually I prefer to just open a new terminal tab if I want to run multiple terminal programs, or use tmux if it’s over ssh. But I was curious about whether other people used job control more often than me. So I asked on Mastodon for reasons people use job control. There were a lot of great responses, and it even made me want to consider using job control a little more! In this post I’m only going to talk about using job co ..read more
Visit website
Notes on git's error messages
Julia Evans
by Julia Evans
3M ago
While writing about Git, I’ve noticed that a lot of folks struggle with Git’s error messages. I’ve had many years to get used to these error messages so it took me a really long time to understand why folks were confused, but having thought about it much more, I’ve realized that: sometimes I actually am confused by the error messages, I’m just used to being confused I have a bunch of strategies for getting more information when the error message git gives me isn’t very informative So in this post, I’m going to go through a bunch of Git’s error messages, list a few things that I think are con ..read more
Visit website
Making crochet cacti
Julia Evans
by Julia Evans
4M ago
I noticed some tech bloggers I follow have been making April Cools Day posts about topics they don’t normally write about (like decaf or microscopes). The goal isn’t to trick anyone, just to write about something different for a day. I thought those posts were fun so here is a post with some notes on learning to crochet tiny cacti. first, the cacti I’ve been trying to do some non-computer hobbies, without putting a lot of pressure on myself to be “good” at them. Here are some cacti I crocheted: They are a little wonky and I like them. a couple of other critters Here are a couple of other thin ..read more
Visit website
Some Git poll results
Julia Evans
by Julia Evans
4M ago
A new thing I’ve been trying while writing this Git zine is doing a bunch of polls on Mastodon to learn about: which git commands/workflows people use (like “do you use merge or rebase more?” or “do you put your current git branch in your shell prompt?”) what kinds of problems people run into with git (like “have you lost work because of a git problem in the last year or two?”) which terminology people find confusing (like “how confident do you feel that you know what HEAD means in git?”) how people think about various git concepts (“how do you think about git branches?”) in what ways my usag ..read more
Visit website
The "current branch" in git
Julia Evans
by Julia Evans
4M ago
Hello! I know I just wrote a blog post about HEAD in git, but I’ve been thinking more about what the term “current branch” means in git and it’s a little weirder than I thought. four possible definitions for “current branch” It’s what’s in the file .git/HEAD. This is how the git glossary defines it. It’s what git status says on the first line It’s what you most recently checked out with git checkout or git switch It’s what’s in your shell’s git prompt. I use fish_git_prompt so that’s what I’ll be talking about. I originally thought that these 4 definitions were all more or less the same, but ..read more
Visit website
How HEAD works in git
Julia Evans
by Julia Evans
4M ago
Hello! The other day I ran a Mastodon poll asking people how confident they were that they understood how HEAD works in Git. The results (out of 1700 votes) were a little surprising to me: 10% “100%” 36% “pretty confident” 39% “somewhat confident?” 15% “literally no idea” I was surprised that people were so unconfident about their understanding – I’d been thinking of HEAD as a pretty straightforward topic. Usually when people say that a topic is confusing when I think it’s not, the reason is that there’s actually some hidden complexity that I wasn’t considering. And after some follow up conv ..read more
Visit website
Popular git config options
Julia Evans
by Julia Evans
5M ago
Hello! I always wish that command line tools came with data about how popular their various options are, like: “basically nobody uses this one” “80% of people use this, probably take a look” “this one has 6 possible values but people only really use these 2 in practice” So I asked about people’s favourite git config options on Mastodon: what are your favourite git config options to set? Right now I only really have git config push.autosetupremote true and git config init.defaultBranch main set in my ~/.gitconfig, curious about what other people set As usual I got a TON of great answers and ..read more
Visit website
Inside .git
Julia Evans
by Julia Evans
6M ago
Hello! I posted a comic on Mastodon this week about what’s in the .git directory and someone requested a text version, so here it is. I added some extra notes too. First, here’s the image. It’s a ~15 word explanation of each part of your .git directory. You can git clone https://github.com/jvns/inside-git if you want to run all these examples yourself. Here’s a table of contents: HEAD: .git/head branch: .git/refs/heads/main commit: .git/objects/10/93da429… tree: .git/objects/9f/83ee7550… blobs: .git/objects/5a/475762c… reflog: .git/logs/refs/heads/main remote-tracking branches: .git/refs/rem ..read more
Visit website
Do we think of git commits as diffs, snapshots, and/or histories?
Julia Evans
by Julia Evans
7M ago
Hello! I’ve been extremely slowly trying to figure how to explain every core concept in Git (commits! branches! remotes! the staging area!) and commits have been surprisingly tricky. Understanding how git commits are implemented feels pretty straightforward to me (those are facts! I can look it up!), but it’s been much harder to figure out how other people think about commits. So like I’ve been doing a lot recently, I went on Mastodon and started asking some questions. how do people think about Git commits? I did a highly unscientific poll on Mastodon about how people think about Git commits ..read more
Visit website

Follow Julia Evans on FeedSpot

Continue with Google
Continue with Apple
OR