zoukankan      html  css  js  c++  java
  • gitlab ActionView::Template::Error (undefined method `[]' for nil:NilClass): 500错误

    Started GET "/mygroup/myproject/tree/master/MyDirectory" for 127.0.0.1 at 2014-10-22 22:42:42 +0200
    Processing by Projects::TreeController#show as HTML
      Parameters: {"project_id"=>"mygroup/myproject", "id"=>"master/MyDirectory"}
    Completed 500 Internal Server Error in 373ms
    
    ActionView::Template::Error (undefined method `[]' for nil:NilClass):
        1: - tree, commit = submodule_links(submodule_item)
        2: %tr{ class: "tree-item" }
        3:   %td.tree-item-file-name
        4:     %i.fa.fa-archive
      app/models/repository.rb:162:in `method_missing'
      app/models/repository.rb:228:in `submodule_url_for'
      app/helpers/submodule_helper.rb:6:in `submodule_links'
      app/views/projects/tree/_submodule_item.html.haml:1:in `_app_views_projects_tree__submodule_item_html_haml__1960578592168380494_48290660'
      app/helpers/tree_helper.rb:19:in `render_tree'
      app/views/projects/tree/_tree.html.haml:42:in `_app_views_projects_tree__tree_html_haml__985986129427416040_29680420'
      app/views/projects/tree/show.html.haml:9:in `_app_views_projects_tree_show_html_haml___3955057514203210948_31577660'
      app/controllers/projects/tree_controller.rb:13:in `show'

    这个问题让我聪明的领导给解决了
    这个问题想开了,不难解决。就是.gitmodules文件中submodule项目,有一个已经不用了,删除了路径,但是在submodule中还存在,删除了,这个问题就解决了
    我也参考了https://gitlab.com/gitlab-org/gitlab-ce/issues/714
    由这个引发的思考和反思(为什么我一天没有反思,领导一个多小时就解决了):
    1,注意前后对比,之前的版本是正常的,这个版本是不正常的,我没有做到前后对比,虽然从网上得到的结果是.gitmodules的问题,但是我没有确认一定是这个文件的问题
    2,没有细心的对比不同,文件中,只有其中的一个文件没有,没有发现这个点。
    3,对gitlab不了解,原来没有用过这个服务,对这个服务的应用和使用了解的不清楚。我只是从gitlab文件里边直接更改.gitmodules,但是当问题解决了的时候,我git clone 发现,.gitmodules文件没有修改过。而重新提交的文件就可以。
    4,从服务源代码定位问题方向(当时我也看了,但是一看看不懂,就放弃了),总结起来还是对日志出现的报错,研究不深。
    总结:
    1,以后遇到问题要注意bug前后对比,找出差异
    2,细心查找不同,注意观察
    3,对出现问题的服务,多加了解、熟悉、使用






  • 相关阅读:
    gitlab配置ssh连接
    java 函数编程之Consumer接口的使用
    一枚程序猿的MacBook M1详细体验报告
    【线上问题排查技巧】动态修改LOGGER日志级别
    【线上排查实战】AOP切面执行顺序你真的了解吗
    阿里巴巴Canal常见问题:重复解析/Filter失效/消费落后
    使用Binlog日志恢复误删的MySQL数据实战
    Git实战技巧:恢复被强制push -f失踪的代码
    一次完整的JVM堆外内存泄漏故障排查记录
    Java线上问题排查神器Arthas快速上手与原理浅谈
  • 原文地址:https://www.cnblogs.com/cuizhipeng/p/4602343.html
Copyright © 2011-2022 走看看