3 ms·
I hear ya. I've done some crazy things with `git reflog` (which I always pronounce git re-flog instead of ref-log) but it is not fun. There's the usual cogniti
by barakm 2y ago
I hear ya. I've done some crazy things with `git reflog` (which I always pronounce git re-flog instead of ref-log) but it is not fun.
There's the usual cognitive shift, and in my case a bit of a best-practice shift I had to go through to get comfortable with `jj` -- specifically, keeping the repo directory pristine (and putting my temp output in a git-ignored dir, or outside the repo) because /everything/ is tracked. Flip side being, I've forgotten to `git add` new files at least a few times a year, and now that won't be an issue.
But yeah, can highly recommend, and I'm excited to start to jump between multiple open branches^Wbookmarks at will and learn more about the intricacies of conflict management (and the original link is a good glimpse at that!)
- stavros 2y agoAre new files tracked by default? If I forget to ignore a bunch of build outputs, will that make my repo huge immediately?
- stouset 2y agoThere’s a configurable cap on max file size to auto-add, IIRC. It defaults to something “reasonable”. If you do somehow add a terabyte of small files by accident, it’s still just git under the hood so you can make sure nothing active points at them and GC them.
- stavros 2y agoI'm thinking of something like node_modules, sounds like I'll need to not forget.
- steveklabnik 2y agoThose are usually in your gitignore, right? Also, this behavior (automatically tracking) is configurable. I thought I would hate it but I actually really like it.
- stavros 2y agoYeah they usually are, I'm sure it's great because I add files more often than I ignore, but I need to be careful with the temporary files I write left and right in the repo dir during development.