CodeEditApp / CodeEditApp/CodeEdit
🐞 Git Branch detection captures shell outputs rather than just the branch
- 主要语言
- Swift
- 星标
- 23k
- 派生
- 1.2k
- PR 合并指标
- 30 天内没有已合并 PR
描述
### Description
In my ZSH configuration (~/.zprofile) I echo text out, this runs when I open a new shell, but the text echoed shows up in the Toolbar's subtitle where it shows the branch.
### To Reproduce
This assumes the same machine configuration as me, since I'm unsure how much of this is CodeEdit's decisions VS my setup, though assuming you run ZSH as your standard shell I'd assume it would replicate properly.
#### open `.zprofile`
```shell
open ~/.zprofile -a CodeEdit
```
#### add an `echo` statement, such as
```shell
echo "This text should not show up in CodeEdit branch info, it should only be seen in interactive shells"
```
#### save `.zprofile`
#### Quite CodeEdit
#### Open a Git initialized repository in CodeEdit
Or make a temporary Git repo and open it...
```shell
setopt INTERACTIVE_COMMENTS
# ↑ allow comments in the shells interactive mode (default off in zsh)
dir="$(mktemp -d)" # makes a temporary folder (so it auto deletes by the OS later)
cd $dir # go to our temporary directory
git init # initialize a Git repository in the directory
open . -a CodeEdit # open our temporary git repo in CodeEdit
```
#### and in the branch section you will see an output like the image attached
### Expected Behavior
CodeEdit runs a non-interactive shell to capture the current branch, and only captures branch info via Git's stdout, rather than the shell contents
### Version Information
CodeEdit: 0.3.6 (47)
macOS: 26.1.0
### Additional Context
_No response_
### Screenshots
贡献指南
调研方向
首先跟踪 CodeEdit 的 Git 分支检测,以及用于填充 Toolbar 副标题的 shell 命令;issue 未指定文件或测试。通过在 ~/.zprofile 中添加 echo 语句并打开一个 Git 仓库来复现,然后确认只显示分支,且排除 shell 输出。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- git, macos, swift, zsh
- 领域
- desktop, developer-experience
- Issue 类型
- 缺陷
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 45/100