threads / discuss / 56735

[ANN] git-branchstack: make pull-requests without switching branches

Subject: [ANN] git-branchstack: make pull-requests without switching branches

## tl;dr

3 messages between Oct 18, 2021 and Oct 18, 2021.

replies: 2people: 2as markdown or json

Johannes Altmanninger· Oct 18, 2021, 19:57 UTC · lore

I like to keep all in-flight commits in a single local branch, so I can test them in combination and update them easily. git-branchstack allows me to send select commits upstream as pull requests (for projects that don't accept patches). By never touching the worktree, it avoids invalidating builds. See

	https://github.com/krobelus/git-branchstack

To implement this I needed a way to reword (change the commit message) and reparent commits. I used the "rebase" function from [git revise](https://git-revise.readthedocs.io/). Unlike "git merge-tree" this can change commit messages, and allows me to resolve conflicts using a temporary file. I didn't find another easy way to do this (without touching my worktree/index). Is there a plumbing command I can use to create a copy of a commit, but with a different commit message?

I wonder if there are more use cases for creating/updating commits that are not on the current branch. Future "git rebase -i" should only update worktree files when needed (see the "TODO:" comments in sequencer.c). Rewording never needs that, so it could, in theory, work on branches that are not checked out, though that would complicate the rebase UI even more.

Junio C Hamano· Oct 18, 2021, 20:29 UTC · re: Johannes Altmanninger · lore

Re: [ANN] git-branchstack: make pull-requests without switching branches

Johannes Altmanninger <aclopte@gmail.com> writes:
> I wonder if there are more use cases for creating/updating commits that are
> not on the current branch.
I think the canonical answer to that question is "git worktree add"?
Johannes Altmanninger· Oct 18, 2021, 21:04 UTC · re: Junio C Hamano · lore

Re: [ANN] git-branchstack: make pull-requests without switching branches

On Mon, Oct 18, 2021 at 01:29:10PM -0700, Junio C Hamano wrote:
Show 6 quoted lines
> Johannes Altmanninger <aclopte@gmail.com> writes:
> 
> > I wonder if there are more use cases for creating/updating commits that are
> > not on the current branch.
> 
> I think the canonical answer to that question is "git worktree add"?

True. Cherry-picking a bunch of commits can be much slower than just creating the commit objects but I don't think that's a problem.

← back to recent threads