多分支推送问题 - prepush Git Hooks using Husky
Multiple branch push issue - prepush Git Hooks using Husky
我的问题很简单:
- 我正在使用 Husky 来处理 git 钩子
我已经配置了一个预推挂钩 运行 2 个脚本:
"prepush": "npm-run-all --parallel lint test"
单推正常
- 但是当我尝试推送 2 个或更多分支时,它没有检测到失败的脚本。
举个例子,假设我创建了 2 个分支:
1) feature/branch-1
2) feature/branch-2
- branch-1 包含 lint 问题,branch-2 是干净的(没有测试失败/没有 lint 问题)
- 我结帐到 branch-2 并推送两个分支(在我的例子中使用 SourceTree)。
调用了 Husky prePush scrit,但 lint 脚本不会失败(如果它在我仅推送该分支时失败,请避风港)。
我正在使用 Husky 0.14.3
您不能 运行 在您当前不在的分支上进行测试。
如果你在 feature/branch-2
上并按下 feature/branch-1
,githook 将正常启动并 运行。但是您的应用程序在文件系统上的当前状态是 feature/branch-2
,因此测试将通过。
在推送之前,您需要检查要推送的分支。
另一种方法是 运行 pre-commit
上的测试,这样您将始终在正确的分支上。
或者做一些脚本来检查正确的分支,运行 测试,推送并把你放回你之前的分支。虽然可能,但可能有点 over-engineered.
我的问题很简单:
- 我正在使用 Husky 来处理 git 钩子
我已经配置了一个预推挂钩 运行 2 个脚本:
"prepush": "npm-run-all --parallel lint test"
单推正常
- 但是当我尝试推送 2 个或更多分支时,它没有检测到失败的脚本。
举个例子,假设我创建了 2 个分支:
1) feature/branch-1
2) feature/branch-2
- branch-1 包含 lint 问题,branch-2 是干净的(没有测试失败/没有 lint 问题)
- 我结帐到 branch-2 并推送两个分支(在我的例子中使用 SourceTree)。
调用了 Husky prePush scrit,但 lint 脚本不会失败(如果它在我仅推送该分支时失败,请避风港)。
我正在使用 Husky 0.14.3
您不能 运行 在您当前不在的分支上进行测试。
如果你在 feature/branch-2
上并按下 feature/branch-1
,githook 将正常启动并 运行。但是您的应用程序在文件系统上的当前状态是 feature/branch-2
,因此测试将通过。
在推送之前,您需要检查要推送的分支。
另一种方法是 运行 pre-commit
上的测试,这样您将始终在正确的分支上。
或者做一些脚本来检查正确的分支,运行 测试,推送并把你放回你之前的分支。虽然可能,但可能有点 over-engineered.