7个版本
0.3.1 | 2023年5月14日 |
---|---|
0.3.0 | 2023年5月9日 |
0.2.4 |
|
0.1.0 | 2023年5月1日 |
#2 in #conflicts
80 个月下载量
490KB
965 行
probranchinator
这是一个命令行工具,它会比较仓库中所有分支,并显示它们如何相互合并。
工作原理
- 它从命令行选项中获取远程仓库URL
- (如果需要) 将远程仓库克隆到临时本地仓库
- 从远程获取所有分支并修剪已删除的分支
- 比较选定的分支(通过CLI传递或最近更新的)
- 在终端输出结果
工具比较分支并显示每个比较的表格。该表中的每一项代表将一个分支合并到另一个分支的尝试。您可能会得到以下结果之一
- ✅✅ 无变化:已经是最新的
- 🚀✅ 无冲突:可以快速前进合并
- 🤝✅ 无冲突:可以自动合并
- 🚧🔧 发现冲突,需要手动解决
- ❌❌ 无法合并(通常意味着您的分支没有共同的祖先)
- ❌🤔 未知合并分析结果(这实际上不应该发生)
请注意,由于与系统/协议的兼容性,目前需要安装并可在 git
CLI 中使用的 $PATH
执行克隆、获取和修剪操作。其他操作直接在克隆的仓库中执行以提高效率。工具在系统临时目录中创建临时本地仓库,因为正常的合并冲突分析会留下一个可能处于“脏”状态的工作树,我们不希望干扰用户可能存在未完成工作的仓库。
安装
从 最新版本 下载二进制文件并将其放在您的 $PATH
中。
工具需要安装并可在 $PATH
中使用的 git
CLI。
使用脚本安装
您还可以使用 install.sh
脚本与 bash
shell一起使用。它将下载最新版本并将其放在 /usr/local/bin
目录中。
curl -s https://raw.githubusercontent.com/strowk/probranchinator/main/install.sh | bash
目前只有少数平台提供预构建的二进制文件:Linux (x86_64 gnu),macOS(x86_64, aarch64) 和 Windows (x86_64 gnu)。
使用 cargo 安装
如果你的平台/架构不受支持,你可能需要从源代码构建工具。你需要安装 Rust 工具链。
然后你可以使用 cargo
安装工具
cargo install probranchinator
使用方法
probranchinator [OPTIONS] --remote <REMOTE> [BRANCHES]...
示例
probranchinator --remote=https://github.com/strowk/probranchinator-test.git
如果你想检查你的本地仓库,可以使用 file://
协议
probranchinator --remote=file://$PWD
默认情况下,probranchinator
将分析最近更新的 10 个分支。你可以通过传递要分析的分支作为 CLI 参数来覆盖此设置
probranchinator --remote=https://gitlab.com/git-compose/git-compose.git master test-branch-2
或者通过更改要分析的最近分支数量
probranchinator --remote=https://gitlab.com/git-compose/git-compose.git --recent=2
要退出程序,请按 q
或 Ctrl+C
。
输出格式
默认情况下,probranchinator
将结果以交互式格式作为终端 UI 输出。
你也可以通过传递 --output=json
来将结果输出为 JSON 格式
probranchinator --remote=https://github.com/strowk/probranchinator-test.git --output=json
默认情况下,输出将格式化,但你可以传递 --pretty=false
来禁用该功能。
其他可用的格式包括
- simple - 以单行输出每个分析结果
- table - 以表格格式输出结果
- markdown - 以 markdown 表格输出结果
依赖项
~17–29MB
~530K SLoC