Buv*_*inJ 16
接受的答案说要使用update hook.我不确定这对每个人都有帮助,因为那是一个服务器端钩子.如果你推动你的新分支,它会工作,但如果保持纯粹的本地呢?
我正在创建从未推过的本地分支,所以我正在使用post-checkout.创建分支后,通常不会在做任何其他操作之前检查它吗?当我检测到新分支时,我会修改它并自动添加提交.之后,我可以通过它是否有提交历史来确定这是否是结帐时的新分支.
这是我的方式(我的钩子是bash):
true=1
false=0
isNewBranch()
{
local logQuery=$(git log --all --not $(git rev-list --no-walk --exclude=refs/heads/$(getBranchName) --exclude=HEAD --all))
if [ -z $logQuery ]; then
echo $true
else
echo $false
fi
}
getBranchName()
{
echo $(git rev-parse --abbrev-ref HEAD)
}
Run Code Online (Sandbox Code Playgroud)
它是更新钩子,它为新的refs得到零sha,分支会说head不是标签
| 归档时间: |
|
| 查看次数: |
8073 次 |
| 最近记录: |