GIT PUSH 命令卡死

系统环境

  • 服务器:Debian 9.x
  • 客户端:Windows 10

背景

服务器端,用 ops 用户执行命令 git init --bare resume 后,客户端设置完地址 push 后,卡住不动:

33145@DESKTOP-BVNQKGT MINGW64 /d/web/resume (master)
$ git commit -m '测试git提交'
[master 0d2949c] 测试git提交
1 file changed, 2 insertions(+)

33145@DESKTOP-BVNQKGT MINGW64 /d/web/resume (master)
$ git push
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 4 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 348 bytes | 348.00 KiB/s, done.
Total 3 (delta 2), reused 0 (delta 0)

问题定位

  1. 由于之前修改了云存储的 安全组 进出策略,控制了端口,一开始以为是这个问题,但是放开所有端口后问题任然存在;
  2. 然后排查是否是服务器端建立仓库的方式不对,或者未设置什么参数,经过和git文档建仓库命令对比,未发现异常;
  3. 然后用其他同服务器仓库进行push测试,发现是可以的,所以可以确定是次仓库的问题。查询到仓库的地址以及用户权限这块时发现是仓库权限问题;

原因

Git与服务器端连接,用的是特殊的 git 用户,而服务器中用的是 ops 用户新建的仓库,权限不对。

解决

更改仓库的权限 chown git:git resume.git -R 即可。

你可能感兴趣的:(git,push)