Comments (6)
vim-fugitive is nice, but it's staging tool is a pure wrapper around git stage -p, which does not support line-by-line staging.
vim-fugitive
does support partial staging, you just have to use visual line mode when staging.
lg path/to/file is a lot easier than navigating an interactive Files panel.
You can just use /
to search.
I'll stop with the digression now.
from lazygit.
This looks pretty close to lazygit
to me:
In any case, this is a discussion better suited for the lazygit
discord channel since it is pretty off topic.
from lazygit.
As much as I love lazygit
, for this specific thing maybe you would be better off with vim-fugitive or maybe vim-gitgutter for staging the current hunk. Just my two cents, consider it a possible alternative.
from lazygit.
- this is a generic feature, not vim-specific at all. i personally would use it from the cmdline about as much as i use it from vim.
lg path/to/file
is a lot easier than navigating an interactive Files panel. - vim-fugitive is nice, but it's staging tool is a pure wrapper around
git stage -p
, which does not support line-by-line staging. - vim-gitgutter is less universally endorsed so i haven't checked it out before, but it seems to claim that it supports line-by-line staging. i will look into it for sure, thanks!
EDIT: nevermind, gitgutter is the same deal. it allows you to stage a hunk, and then delete the bits you dont want to stage, just like git stage -p
. honestly, as far as i know, only git gui
and lazygit
have the convenience of selecting a single line and committing it.
from lazygit.
You can just use
/
to search.
yes, i did mention automating doing /file
in my initial report
vim-fugitive
does support partial staging, you just have to use visual line mode when staging.
!!! did not know this, will try it out right now and see if it replaces lazygit for me. thanks!
from lazygit.
hmm, line-by-line staging with :Gdiff
+:dp
works, but it seems that a unified diff like in git gui or lazygit is not feasible, since it is just wrapping vimdiff and writing the index from the resulting buffer.
a quick internet search did not turn up anyone getting functionality in vim similar to the staging ui from lazygit or git-gui, but maybe someone does have this? (all i want, really, is a terminal based, keyboard driven app that shows a nice, hunk-ed, unified diff of a single file against the index, AND allows easily staging a single +LINE or -LINE from within that diff.)
but like you say, this is a tangent, and lazygit could use this feature with or without vim
from lazygit.
Related Issues (20)
- Pressing Enter on Status Page should offer to show Recent Repos or Subdirectory Tree
- VIM mode in the `commit description` editor HOT 6
- Option to navigate Block sub-menus with same key (1 .. 5) HOT 11
- Search/show commits for a given file HOT 2
- menuFromCommand support user input to filter menu
- show commits difference between 2 branches (git log branchA...branchB) HOT 2
- Lazygit exits when it's not in a Git repo HOT 1
- Commit hash color incorrect after merge with main HOT 1
- Files panel is empty when (many) new/changed files exist HOT 1
- Custom command and custom command HOT 1
- New "notARepository" strategy: recurse
- Add grouping for tags HOT 2
- Rewording last commit freezes when GPG passphrase is needed in CLI HOT 1
- Emojis in Commit Messages can Break UI Layout and Affect Displayed Diffs
- Crash when filtering by author HOT 1
- Recent repositories HOT 12
- Add ability to config regexp in commit message for links
- Support terminal hyperlinks to allow opening diff lines in editor when using delta pager
- [Request] Create go template variable for selected items in files for example
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lazygit.