• 利用Gogs自建私人git服务器以及两个关于ssh的坑


    Gogs的官网地址:https://gogs.io/docs/installation/install_from_binary

    安装教程,分为裸机docker两种方式,建议裸机方式使用linux的git用户进行安装【docker安装的忽略】

    安装完毕之后如果想要重新初始化设置,只需要删除/home/git/gogs/custom/conf/app.ini 这个文件,重新启动./gogs web即可,仓库以及用户信息等保留。

    剩下就是裸机安装过程中,为了使用ssh方式进行git clone所做的踩坑,

    第一个配置完ssh免密登录之后还需要进行密码验证,建议检查一下git用户家目录.ssh目录,以及authorized_keys文件的权限设置是否合理,具体参阅这篇博文解决SSH免密登录配置成功后不生效问题

    然后设置完之后可能会发现ssh –T user@host能够校验正确了,但是还是Git clone不下来,且git报错

    $ git clone xxxxxxxxxxxxxxxxxxxx
    Cloning into 'xxxxx'
    Gogs: Internal error
    fatal: Could not read from remote repository.
    
    Please make sure you have the correct access rights
    and the repository exists.

    可能以为是ssh和权限相关设置不对导致,建议看下/home/git/gogs/log/hooks/serv.log 这个文件,如果里面出现类似报错

    2021/09/08 18:50:01 [ERROR] [...ogs.io/gogs/internal/cmd/serv.go:47 fail()] Failed to execute git command: exec: "git-upload-pack": executable file not found in $PATH
    2021/09/08 19:03:46 [ERROR] [...ogs.io/gogs/internal/cmd/serv.go:47 fail()] Failed to execute git command: exec: "git-upload-pack": executable file not found in $PATH
    2021/09/08 19:03:50 [ERROR] [...ogs.io/gogs/internal/cmd/serv.go:47 fail()] Failed to execute git command: exec: "git-upload-pack": executable file not found in $PATH
    2021/09/08 19:08:50 [ERROR] [...ogs.io/gogs/internal/cmd/serv.go:47 fail()] Failed to execute git command: exec: "git-upload-pack": executable file not found in $PATH
    2021/09/08 19:18:10 [ERROR] [...ogs.io/gogs/internal/cmd/serv.go:47 fail()] Failed to execute git command: exec: "git-upload-pack": executable file not found in $PATH

    可以参考这篇文章

    gogs仓库管理软件 exec: "git-upload-pack": executable file not found in $PATH

    这两个坑处理完毕之后基本就能正常使用了,剩下可能就是想要设置开机自启动,可以参考这几篇文章

    https://www.jianshu.com/p/c9ca7c16bd1fhttps://www.codenong.com/cs109129829/

    后者还提供了app.ini各种配置参数的详解,有兴趣可以了解一下.

    一般复制过去就行了,如果启动发现日志里面还是有类似 not found in $PATH 这种问题,可以把git相关的命令做软连接到/sbin目录下试试。

  • 相关阅读:
    查找链表中是否有环linked-list-cycle
    reverse-integer
    AVL树之 Java的实现
    single-number
    Best Time to Buy and Sell Stock II
    maximun-depth-of-binary-tree
    minimun-depth-of-binary-tree
    剑指offer--矩阵中的路径
    grep的几个参数
    fsck和badlocks
  • 原文地址:https://www.cnblogs.com/marshwinter/p/15244713.html
Copyright © 2020-2023  润新知