git部署自动同步站点常见问题及处理方法

说明

本人自己搭建了git服务器并设置了代码提交后自动同步至站点目录,在使用的过程中出现了一些问题,总结了一下,方便大家参考,如有问题,请大家联系我或在评论中指正。

问题一

  • 问题描述:
    代码提交(git add .)时,出现: warning:LF will be replaced by CRLF in xxxxxxxxx(如下图)
    git部署自动同步站点常见问题及处理方法
  • 问题原因:
    平台不同,导致行结束符的差异引起的格式化问题
    想进一步了解,可参考博客:git core.autocrlf配置说明
  • 解决方法:
    # git config core.autocrlf false

问题二

  • 问题描述:
    代码提交后,自动同步到站点的时候,出现如图所示权限错误:
    git部署自动同步站点常见问题及处理方法
  • 问题原因:
    同步至站点目录的权限不够,导致无法写文件。
  • 解决方法:
    修改站点目录权限以及所属用户、用户组,保持与git仓库所属用户和用户组一致。

问题三

  • 问题描述:
    代码push后,自动同步出现如下问题:
    git部署自动同步站点常见问题及处理方法
  • 问题原因:
    仓库权限和站点目录的所属用户以及权限问题
  • 解决方法:
    同问题二

问题四

  • 问题描述
    前提已经设置全局变量的情况下,
    代码提交后,自动同步出现不能识别站点目录的用户,导致同步失败,如下图:
    git部署自动同步站点常见问题及处理方法
  • 问题原因
    站点目录中项目与git仓库中项目存在有代码冲突。
  • 解决方法

    1、如果未设置全局变量 user.name或者user.email,请先设置全局变量:
    # git config --global user.name=“name”
    # git config --global user.email=“email”
    然后赋予相关权限即可
    2、已设置全局变量并有相关权限,则必然是因为冲突引起
    请仔细检查冲突,并解决冲突文件即可
    # git am 或者 git apply 检查

总结:

其实出现的大多数问题,都是由于配置问题或者权限问题导致的,如果出现问题,可以先检查权限相关问题
大家在实践中遇到问题,欢迎在评论中分享讨论,后面我会搜集git 的使用过程中一些常见问题,不定时更新!!!