git - 如何验证 Windows BAT 文件中的当前 git 分支

标签 git batch-file errorlevel

在我的 BAT 文件中运行一些命令之前,我正在尝试弄清楚如何验证用户是否在正确的分支上。

执行这种检查的最佳方法是什么...

IF (on "master" git branch) THEN
   ...
ELSE
   ...

最佳答案

您可以使用 git branch 命令确定您所在的分支,因此我们将使用它的输出进行检查。星号将标记当前分支,如下所示:

D:\>git branch
  master
* staging

我们可以将此输出通过管道传递给 find 命令,然后传递给 IF 语句:

git branch | find "* master" > NUL & IF ERRORLEVEL 1 (
    ECHO I am NOT on master
) ELSE (
    ECHO I am on master
)

> NUL 只是使 find 的输出静音。
find 如果无法在输出中的任何位置找到字符串,将触发 ERRORLEVEL 1

关于git - 如何验证 Windows BAT 文件中的当前 git 分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33662274/

相关文章:

git - 在 Git 中使用 receive.denyCurrentBranch 有什么后果?

git autosetuprebase 不工作?

java - 使用.sh文件执行java程序时出错

powershell - 如何使用 PowerShell 处理 diskpart 命令的输出

windows - 将 ERRORLEVEL 重置为零的最简单方法是什么?

cmd - Windows XP 中子进程的退出代码 "lost",而不是 Windows Server 2003 中的子进程

git - 错误 : Unable to access jarfile bfg. jar - BFG

git 发送邮件 : Sending email with file as an attchment and not with a patch

windows - 从命令行打开 Chrome