stgit
delta
stgit | delta | |
---|---|---|
21 | 88 | |
496 | 20,847 | |
2.2% | - | |
9.4 | 8.1 | |
10 days ago | 5 days ago | |
Rust | Rust | |
GNU General Public License v3.0 only | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
stgit
-
Nobody Cares About Your Git History
The article seems to present a dichotomy between what the author terms a "clean" git history, which he seems to think is a history where multiple commits are squashed into single commits that contain, I guess "one feature", and the unnamed "other" way of doing it, which the author doesn't really elaborate what exactly it is, but he appears to means willy nilly uncurated commits of whatever? To me, both ways he talks about are insane.
With something like stgit[1], it is dead easy to maintain a stack of curated, small un-squashed git-bisectable commits, and your commit history looks like the work of a supernatural genius who knows exactly what he's doing and rarely makes mistakes, and if you have to port your patches (commits) across multiple variants of the same source (think linux drivers ported to multiple distro kernels) that's easy too.
[1] https://stacked-git.github.io/
- Stacked Git
- Your GitHub pull request workflow is slowing you down
- stgit.el --- major mode for StGit interaction. Stacked Git, StGit for short, is an application for managing Git commits as a stack of patches like `quilt'
-
Jujutsu: A Git-compatible DVCS that is both simple and powerful
Pijul needs a 1.0 release if it wants wide adoption. I don't understand why they wait.
Meanwhile, if rebasing on git is an issue, you should probably try stacked-git (https://stacked-git.github.io/). It manages commits as a stack of patches - like quilt, but on top of git.
-
git-fc 0.1: a new fork of git for users
I just think there's a lot good ideas floating around the git community, for example Stacked Git and gitstatus, but somehow none of this connects with Git developers.
-
Stacked PRs – Pros and Cons?
Tangentially related, sometimes I find Stacked Git helpful when figuring out complex features or refactoring. Until it's nearly finished I'm not sure what would be worthwhile submitting as a PR but once it's ready then several smaller PRs are much easier to understand.
It's local stacked PRs and you can jump between them to edit as the ideas evolve.
https://stacked-git.github.io/
But if the nearby code is evolving quickly from other people this can be a bad approach because of merge hell when the work is finally submitted.
-
What do you do when your PR is in review?
Note: there are also tools like https://stacked-git.github.io/ to help manage this.
-
Request for Feedback:Checkpoint Workflow
Maybe checkout StGit: https://stacked-git.github.io/ I have not used it by myself yet, but I think it's capable of what you're trying to do.
- Bash script uses gh CLI to open patch stack
delta
- Difftastic, a structural diff tool that understands syntax
- Popular Git Config Options
-
So You Think You Know Git – Git Tips and Tricks by Scott Chacon
Thanks for the difftastic & zoxide tips.
However, I've been using this git pager/difftool: https://github.com/dandavison/delta
While it's not structural like difft, it does produce more readable output for me (at least when scrolling fast through git log -p /scanning quickly
-
Essential Command Line Tools for Developers
View on GitHub
- Potencializando Sua Experiência no Linux: Conheça as Ferramentas em Rust para um Desenvolvimento Eficiente
-
Unified versus Split Diff
I'm currently waiting on the integration between Delta and Difftastic:
https://github.com/dandavison/delta/issues/535
Difftastic now has JSON output, whic should make it much easier to build this.
- Delta, a syntax-highlighting pager for Git, diff, and grep output
- Ask HN: What's a new developer tool you recently started using?
-
Magit
I'm surely in the minority here. I've been using Emacs for almost a decade now, but I just can't get into the Magit workflow. I've tried several times, but always end up going back to Git on the command line. I have dozens of aliases, shell integrations, a nice diff viewer[1], etc., and interacting with Git has become muscle memory. I can commit, cherry-pick, rebase, bisect, fix conflicts, etc., in a fraction of the time it would take me to navigate Magit's UI. I'm sure with enough practice, a Magit user could do this more quickly and efficiently, but honestly, with some custom-built porcelain, Git's UI is not so bad. Though this could very well be Stockholm syndrome after using it for such a long time...
For whatever reason, Magit's opinionated workflows never clicked with me. A part of it is the concern that it will do something weird to my repo that I'll then have to waste more time undoing manually. I usually don't trust sugary wrappers around tools. And another is the fact I don't use Emacs on all machines, and setting up Git on a remote system is just a matter of copying over my config and some shell integrations.
Also, on a more personal note, I find the cultish fanboyism whenever Magit is brought up slightly offputting. Does anyone have anything bad to say about it? No software can realistically be this infallible. :)
[1]: https://github.com/dandavison/delta
-
How to use Git?
For looking at diffs I still prefer the command line though, and use delta to view diffs between commits or branches.
What are some alternatives?
git-absorb - git commit --fixup, but automatic
diff-so-fancy - Good-lookin' diffs. Actually… nah… The best-lookin' diffs. :tada:
misc-gitology - An assortment of scripts around Git
difftastic - a structural diff that understands syntax 🟥🟩
git-autofixup - create fixup commits for topic branches
vim-fugitive - fugitive.vim: A Git wrapper so awesome, it should be illegal
git-branchless - High-velocity, monorepo-scale workflow for Git
lazygit - simple terminal UI for git commands
pr-agent - 🚀CodiumAI PR-Agent: An AI-Powered 🤖 Tool for Automated Pull Request Analysis, Feedback, Suggestions and More! 💻🔍
vim-gitgutter - A Vim plugin which shows git diff markers in the sign column and stages/previews/undoes hunks and partial hunks.
bat - A cat(1) clone with wings.
gitui - Blazing 💥 fast terminal-ui for git written in rust 🦀