我编写了一个实用程序,用于收集测试前后的“指标”(即运行后端和前端测试的结果),并将结果存储在以测试分支命名的子文件夹中(此子文件夹位于特定的用户定义文件夹中,而不是“项目”文件夹中——用户可自行决定何时清理旧子文件夹)。该实用程序执行的所有操作都与当前工作目录相关,而当前工作目录被假定为正在测试的 git 仓库本地存储的根目录或“项目”文件夹。
该实用程序会向 git 询问 CWD 上的当前分支名称。我使用“git name-rev --name-only HEAD”来获取该名称。只要我至少向该分支提交过一次,它就能完美运行。但是,实际用例是,当您切出新分支时运行该实用程序,然后在准备好合并请求时再次运行它;然后将前后指标复制到我们使用的 MR 模板中。但是,当第一次切出分支时,上述命令返回的是我从中切出的分支的名称,而不是新分支的实际名称。除了运行“git status”并解析输出之外,还有其他方法可以可靠地使用其他 git 命令获取正确的分支名称吗?