Repository navigation
Merge window: auto-merged lines, autostash pull, rebase titles - #13
Merged
Merged
Conversation
During a rebase HEAD is detached, so the upstream title showed a bare hash and yours only the commit. Take the branch being rebased and the commit it is rebased onto from what git saves for the rebase. Tests run a real rebase and cherry-pick through the window and continue them. Claude-Session: https://claude.ai/code/session_01BwofrMkZ4QpGsCYYSgncrd
Like IntelliJ, local changes are put aside before pulling and back after it. When putting them back conflicts, git keeps them in the stash and the merge window opens with them as yours; once resolved they are local changes again. git_pull_autostash turns it off. Claude-Session: https://claude.ai/code/session_01BwofrMkZ4QpGsCYYSgncrd
Changes made on one side only were merged by git without a mark, looking like lines nobody touched. Diff the base with the merged text to find them, tell by yours whose change each one is, and mark them grey with the side they came from. The demo has one such line per side. Claude-Session: https://claude.ai/code/session_01BwofrMkZ4QpGsCYYSgncrd
Neovim refuses to compare v:null with a list. Claude-Session: https://claude.ai/code/session_01BwofrMkZ4QpGsCYYSgncrd
The edit window said :w to use it, :q! to cancel while the merge window said q to accept. Both use the configured accept and discard keys now, and the status line once resolved says only what to press, to fit. Claude-Session: https://claude.ai/code/session_01BwofrMkZ4QpGsCYYSgncrd
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Follow-ups to the merge window from #12.
ProjectMergeAuto). They are marked with the side they came from,◂yours or▸theirs, in the result pane and on that side. Before, they looked like lines nobody had touched. To find them, the merged text is diffed against the base, and the diff of yours against the base tells whose change each line is.git pull --autostash, so uncommitted changes are set aside before the pull and put back after it, like IntelliJ does.git_pull_autostashturns this off. It needs git 2.27 or newer.e) now usesqto accept andQto discard, like the merge window.:wand:q!still work.done: q to accept, Q to discard, short enough to fit a narrow pane.Testing
--autostashpull: one case puts the changes back cleanly, the other conflicts and is resolved in the window;qandQin the edit window.v:nullwith a list.test/demo_merge.shnow includes one auto-merged line from each side.https://claude.ai/code/session_01BwofrMkZ4QpGsCYYSgncrd
Generated by Claude Code