当前位置:   article > 正文

centos升级git到2.x版本后gitea(giteaforbt)运行依然报找不到git可执行文件以及ssh无法pull报没权限问题解决方案_centos git 2

centos git 2

前言

最近使用gitea好像老是有bug,所以我就想更新一下公司的git服务器(从1.12更新到1.17),当我更新完成后,无法启动提示git需要2.0以上版本,无赖centos的yum最高只能安装到git 1.8.3,所以就采用啦网络上大佬的下载源码编译方案,但是当我编译安装(当然我是先卸载啦老版本,否在依然会提示git版本为1.8.3版本太低)完成后重启gitea却提示从$PATH中找不到git命令,几番折腾最后还是解决啦,这里将我的解决方案分享给大家。

更新git参考

更新git方案参考:https://blog.csdn.net/lixiaomei0623/article/details/121361571

版本打印

$git --version
git version 2.32.0
  • 1
  • 2

能输出对应版本号,也重启过操作系统了,证明$PATH是一定更新了的。但是重启gitea依然报$PATH中找不到git可执行文件。

报错如下:

2023/06/13 16:43:05 routers/init.go:66:mustInitCtx() [F] code.gitea.io/gitea/modules/git.InitOnceWithSync(ctx) failed: git not found: exec: "git": executable file not found in $PATH
2023/06/13 16:43:15 cmd/web.go:106:runWeb() [I] Starting Gitea on PID: 5760
2023/06/13 16:43:15 ...s/setting/setting.go:594:deprecatedSetting() [E] Deprecated fallback `[server]` `LFS_CONTENT_PATH` present. Use `[lfs]` `PATH` instead. This fallback will be removed in v1.18.0
2023/06/13 16:43:15 cmd/web.go:157:runWeb() [I] Global init
2023/06/13 16:43:15 ...s/setting/setting.go:594:deprecatedSetting() [E] Deprecated fallback `[server]` `LFS_CONTENT_PATH` present. Use `[lfs]` `PATH` instead. This fallback will be removed in v1.18.0
2023/06/13 16:43:15 routers/init.go:66:mustInitCtx() [F] code.gitea.io/gitea/modules/git.InitOnceWithSync(ctx) failed: git not found: exec: "git": executable file not found in $PATH
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

解决方案

几经折腾包括重启服务器,重启服务都尝试了还是不行,搞了很久也在网上搜了很多文章,都没有解决我的问题。后来突然想到原生yum安装的git的可执行文件好像是在/usr/bin目录下的,话说gitea是不是指定了git执行文件的目录啦(这只是猜测,因为软件明显有提示是$PATH下找不到git可执行文件),当我将安装的git软链接道/usr/bin下后发现居然能正常启动了。这尼玛真是个巨坑。
  • 解决方案命令
ln -s /usr/local/git/bin/git /usr/bin/
  • 1

升级git后导致gitea的ssh链接(ssh密钥配置都正常的情况下)无法正常pull代码问题

报错如下

Gitea: Internal error
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
  • 1
  • 2
  • 3
  • 4
  • 5

道理和上面一样的,是因为git用户的$PATH下找不到git-upload-pack命令导致的,参考解决方案:
https://blog.csdn.net/Smart_look/article/details/118061090
解决方案:

ln -s  /usr/local/git/bin/git-upload-pack /bin/git-upload-pack
ln -s /usr/local/git/bin/git-cvsserver /bin/git-cvsserver
ln -s /usr/local/git/bin/gitk /bin/gitk
ln -s /usr/local/git/bin/git-receive-pack /bin/git-receive-pack
ln -s /usr/local/git/bin/git-shell /bin/git-shell
ln -s /usr/local/git/bin/git-upload-archive /bin/git-upload-archive
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/772520
推荐阅读
相关标签
  

闽ICP备14008679号