You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

首次使用Git,执行git push origin master后进程无法退出求助

Git Push到本地裸仓库卡住无法退出的原因及解决办法

这种推送完成后进程卡住的情况我之前也碰到过几次,大概率是下面几个原因导致的,你可以逐一排查:

可能的原因

  • 裸仓库的钩子脚本搞的鬼:裸仓库虽然没有工作区,但如果有人给它加了post-receive这类钩子脚本,脚本里要是有需要交互的操作(比如等着用户输入东西),或者脚本本身运行卡住了,Git推送完内容后会一直等钩子执行完,自然就退不出来了。
  • Windows下的文件锁/权限问题:Windows系统经常会有文件被其他进程占用的情况,要是MyProjectB里的文件被别的程序锁了,或者你的用户权限不够,Git在做后续收尾操作的时候卡壳,进程就停不下来。
  • Git版本的小bug:有些旧版本的Git在处理本地仓库推送到本地裸仓库的场景时,可能存在进程无法正常终止的bug,更新版本就能解决。

对应的解决办法

  1. 先查钩子脚本
    • 打开D:\MyProjectB\hooks文件夹,看看有没有post-receive、update这类文件(可能没有后缀名)。
    • 要是有,用记事本打开看看内容:有没有read之类需要输入的命令?有没有无限循环或者等待外部资源的逻辑?有的话修改掉或者暂时重命名这个脚本,再重新推送试试。
  2. 排查文件占用和权限
    • 把所有打开MyProjectB目录的程序都关掉(比如资源管理器、VS Code这类IDE),确保没有进程占用里面的文件。
    • 右键MyProjectB目录,选「属性」→「安全」,确认当前用户有「完全控制」的权限,避免Git写入时被权限拦住。
  3. 更新Git到最新版
    • 打开PowerShell输入git --version看看当前版本,安装最新的稳定版Git后再试一次推送,说不定旧版本的bug就修复了。
  4. 临时跳过钩子测试
    • 试试运行git push origin master --no-verify,这个参数会跳过所有钩子脚本。如果这次能正常退出,那百分百是钩子的问题,回头再仔细排查钩子就行。

内容的提问来源于stack exchange,提问作者cbp

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 03:38:07