`gh stack submit` fails when remote uses a custom SSH host alias
- Ngôn ngữ chính
- Go
- Star
- 1.5k
- Fork
- 70
- Merge trung bình
- 1 ngày 8 giờ
- Pull request đã merge (30 ngày)
- 7
Mô tả
`gh stack submit` exits with an error when the git remote URL uses a custom SSH host alias (e.g. `github.com-work`) instead of the literal `github.com` hostname. There is no flag to override the repository, so `submit` is unusable in this configuration.
## Steps to reproduce
1. Configure `~/.ssh/config` with a host alias (common for multi-account setups):
```
Host github.com-work
HostName github.com
User git
IdentityFile ~/.ssh/id_ed25519_work
```
2. Clone using the alias:
```
git clone git@github.com-work:org/repo.git
cd repo
```
`git remote get-url origin` → `git@github.com-work:org/repo.git`
3. Initialize a stack and submit:
```
git checkout -b layer-1 && git commit --allow-empty -m "layer 1"
git checkout -b layer-2 && git commit --allow-empty -m "layer 2"
git checkout layer-1
gh stack init --adopt -b main layer-1 layer-2
gh stack submit --draft
```
## Actual result
```
✗ failed to create GitHub client: determining repository: unable to determine current
repository, none of the git remotes configured for this repository point to a known
GitHub host
```
The `--remote origin` flag and `GH_HOST=github.com` env var do not help — the error
is identical with both.
## Expected result
`gh stack submit` pushes the branches and opens draft PRs, the same as it would with a `git@github.com:org/repo.git` remote.
## What I tried
- `gh stack submit --remote origin` — same error
- `GH_HOST=github.com gh stack submit` — same error
- `GH_REPO=org/repo gh stack submit` — gets past host detection, but then pushes to
`git@github.com:org/repo.git` instead of the configured alias, so the push fails
with a key-agent rejection
## Workaround
Push branches manually and create PRs one at a time:
```bash
git push origin layer-1 layer-2
gh pr create --draft --repo org/repo --base main --head layer-1 --title "layer 1"
gh pr create --draft --repo org/repo --base layer-1 --head layer-2 --title "layer 2"
```
## Environment
```
gh version 2.89.0 (nixpkgs)
gh extension: gh stack (github/gh-stack)
OS: macOS
Remote URL format: git@github.com-:org/repo.git
```
Hướng dẫn đóng góp
Hướng nghiên cứu
Begin with the gh stack submit repository-detection and push paths, reproducing the failure with the documented github.com-work SSH alias and the --remote origin and GH_HOST cases. Done means submit recognizes the repository and pushes through the configured alias before opening the draft PRs, matching the literal github.com behavior.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- git, github, go
- Lĩnh vực
- cli, devtools
- Loại issue
- Lỗi
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức độ hoạt động
- Ít trao đổi
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 58/100