git-autofixup
vim-fugitive
Our great sponsors
git-autofixup | vim-fugitive | |
---|---|---|
3 | 114 | |
164 | 19,291 | |
- | - | |
7.9 | 8.1 | |
4 months ago | 21 days ago | |
Perl | Vim Script | |
GNU General Public License v3.0 or later | - |
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.
git-autofixup
- Git-autofixup: create fixup commits for topic branches
-
Stacked Git – manage commits as a stack of patches
Somewhat (or possibly greatly) related:
Are tools like git-absorb safe/reliable?
"Essentially, when your working directory has uncommitted changes on top of draft changesets, you can run `hg absorb` and the uncommitted modifications are automagically folded ("absorbed") into the appropriate draft ancestor changesets. This is essentially doing `hg histedit` + "roll" actions without having to make a commit or manually make history modification rules."
I haven't wrapped my head around the algorithm. I get that an algorithm can "recollate" a series of commits in a way that yields no commit conflicts, but that's not the same as rearranging and combining commits into a sequence of semantically coherent atomic commits.
---
https://github.com/tummychow/git-absorb
https://github.com/torbiak/git-autofixup
-
Correct Git commits with Git-autofixup
git-autofixup can also be installed by simply downloading the script[1], giving it execute permissions, and putting it somewhere in your PATH. It needs perl 5.8.4+, which is very old, and only depends on the standard library. Git ships with a Perl interpreter on Windows.
If there are any staged changes, git-autofixup only fixes those up and ignores any unstaged ones; otherwise it tries to autofixup all unstaged changes.
[1]: https://github.com/torbiak/git-autofixup/blob/master/git-aut...
vim-fugitive
-
How to commit part of file in Git
the only reason I do some git stuff in vim and not _always_ in the shell, is because tpope is very thoughtful and fugitive.vim provides nice ways to deal with hunks or hunk partials (visually selecting a range within a hunk, for i.e.)
https://github.com/tpope/vim-fugitive/blob/master/doc/fugiti...
-
GitUI
I agree, navigating blame history is incredibly useful, if only to save you from asking the wrong person about a particular change.
Vim's Fugitive[1] can do this and also in Textmate to. So I would hope that most editor git plugins can.
1. https://github.com/tpope/vim-fugitive
-
What are some plugins that you can't live without?
Git: vim-fugitive and gitsigns.nvim
-
Is it too late to learn emacs as a vim lifer?
You'll want to invest the time in learning Magit, which will change your life once you get the hang of it (and I was a heavy user of Fugitive in Vim previously!), and it's unlikely you'll find a better integration with GDB anywhere else on the planet than with Emacs, though I can't say that empirically. You just need to take the plunge and start learning it, then cut over and take the hit in productivity one day when you're feeling adventurous. You'll ultimately become far more powerful than you've ever been. Especially if you delve into elisp over time. I use Spacemacs, which is bloated and has bugs, but it has so many features that I haven't undertaken the massive endeavor to replace it from scratch yet.
- Fugitive.vim: A Git wrapper so it should be illegal
-
webify.nvim - Open the current file in the remote's web interface (github or gitlab) or yank its URL
For an option that works on Vim, if you already use tpope's vim-fugitive, there's vim-rhubarb (for GitHub) and fugitive-gitlab.vim (for GitLab).
-
Vim users who work without any plugins, how does your vimrc look like?
I replace vim-fugitive with :! git
-
Switching from Emacs. My experience
The only thing I truly miss from Emacs is [Magit](https://magit.vc/) since I still consider it the best git wrapper available. It is just too good. Unfortunately [Neogit](https://github.com/TimUntersberger/neogit) is not quite there yet although I hope it makes it at some point. I didn't like [Fugitive]https://github.com/tpope/vim-fugitive), but I ended up finding a good enough workaround by using [Lazygit](https://github.com/jesseduffield/lazygit) through [Toggleterm](https://github.com/akinsho/toggleterm.nvim).
-
I like Tabasco.
I do think VSCode is a great tool and I recommend it frequently to people, but I still want to set the record straight here. Yes, vim is obviously limited in the sense that as a CLI app it doesn't draw it's own PDF or HTML windows, that's fair. But it can remote control your favorite PDF viewer or browser for roughly the same functionality. I'm currently writing my thesis using vimtex and it's quite smooth. And all the other stuff you mention is implemented quite competently by various plugins like vim-fugitive, coc.nvim, vimspector and copilot.vim.
-
[Neovim] Meilleure intégration GIT pour Neovim?
Edit: je viens de trouver [https://github.com/tpope/vim-fugitive de Val
What are some alternatives?
git-absorb - git commit --fixup, but automatic
neogit - An interactive and powerful Git interface for Neovim, inspired by Magit
magit - It's Magit! A Git Porcelain inside Emacs.
vim-gitgutter - A Vim plugin which shows git diff markers in the sign column and stages/previews/undoes hunks and partial hunks.
misc-gitology - An assortment of scripts around Git
lazygit.nvim - Plugin for calling lazygit from within neovim.
git-instafix - Amend old git commits with a simple UI.
gitsigns.nvim - Git integration for buffers
GUIDeFATE - GUI Design From A Text Editor
telescope.nvim - Find, Filter, Preview, Pick. All lua, all the time.
stgit - Stacked Git
lazygit - simple terminal UI for git commands