restack: Detect merges
- 主要言語
- Go
- スター
- 762
- フォーク
- 72
- 平均マージ
- 18時間 24分
- マージ済み PR(30日)
- 28
説明
Report from a user:
> Starting situation is master <= A <= B.
> 1. In the Github UI, I merge in A. Locally, I `git checkout master && git pull && git checkout B`.
> 2. While on B, I perform a `gs stack restack`. A and B both restack sucessfully. Looking at `git checkout A && git log`, I can see that the A branch points to the same commit as master.
> 3. `gs stack submit` dies on the A push failing. I'm pretty sure I just tried to force push master.
> 4. `gs branch submit` dies on not finding the base branch anymore.
The thing to do here is that `restack` operations should detect when the branch in question has been merged into its base branch.
If that's the case, it should (either by default or with a prompt), delete the branch in question, and restack the upstack into the base.
Separately, RE: this line:
> I'm pretty sure I just tried to force push master.
The user shared logs and fortunately that's not true. It was a push attempt to the merged branch (A), rejected because the local ref for that branch did not match the remote ref.
---
This should not be fixed until #331 is resolved.
Fixing this would break a workaround for #331 that relies on keeping merged branches around and just not submitting them.
コントリビューションガイド
評価
この issue はまだ評価されていません。