Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

gh stack sync reports success after its atomic push fails

オープン
#417 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
70/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
静か
技術スタック
git, github, go
領域
cli

調査の方向性

gh stack sync コマンドから始め、アトミックなブランチ push の結果を追跡します。失敗した push によって PR の同期が停止し、Branches synced の確認メッセージが表示されず、0 以外の値が返されることを確認します。3 つの PR の rebase ケースを再現したテストのカバレッジを追加または更新します。

索引モデルが issue の本文から書いたものです。

説明

bug topic: cli - sync

Reproduction

Start with an existing three-PR stack whose local branches were rebased and therefore require force pushes, then run:

$ gh stack sync --remote origin
✓ Fetched latest dev from origin
✓ Trunk dev is already up to date

Pushing 3 branches to origin...
⚠ Push failed — branches may need force push after rebase
  Run `gh stack push` to push with --force-with-lease.

Syncing PRs ...
✓ PR #4440 (...) — Open
✓ PR #4441 (...) — Open
✓ PR #4444 (...) — Open
⚠ Cannot create stack: Pull requests must form a stack, where each PR's base ref is the previous PR's head ref
  Each PR's base branch must match the previous PR's head branch.

✓ Branches synced
  Stacked on dev (a80f5ad)

$ echo $?
0

All three remote branch SHAs remained unchanged. The local stack was therefore not published, but sync continued into PR synchronization, printed a success receipt, and exited zero.

Expected

gh stack sync exits nonzero immediately when its atomic branch push fails. It does not attempt PR synchronization or print Branches synced, because the remote stack cannot match local state until the branch refs are updated.

Environment

  • gh-stack v0.1.0
  • gh 2.96.0
  • git 2.50.1
  • macOS arm64

Related

#346 covers suppressed git-hook output during gh stack push. This report is about sync swallowing the failed-push status and returning a false success.

主要言語
Go
スター
1.5k
フォーク
73
平均マージ
1日 8時間
マージ済み PR(30日)
7

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

github/gh-stack のほかの issue

github/gh-stack の issue をすべて見る

似ている issue

Go の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。