将旧的 git 项目导入 Gerrit

发布于 2024-11-14 13:37:26 字数 5361 浏览 4 评论 0原文

我正在尝试在我们的 git 存储库上安装 gerrit。我们有很多项目保存在 git 存储库中。安装后,从网络界面来看一切似乎都正常。我可以从管理>项目菜单中查看项目。我可以将用户或组添加到 gerrit。但是,如果我想向项目添加访问规则,当我单击管理菜单中的访问链接时,服务器会返回应用程序错误、服务器错误(内部服务器错误)。

如果我从管理菜单的常规选项卡中更改任何设置,我可以传递此错误,但这次我无法将更改提交到我的 git 服务器。

错误日志的完整跟踪是这样的;

<块引用>

[2011-06-10 10:36:20,111] 警告/:projectAccess 中出现错误 java.lang.NullPointerException 在 com.google.gerrit.server.git.VersionedMetaData.getRevision(VersionedMetaData.java:69) 在 com.google.gerrit.httpd.rpc.project.ProjectAccessFactory.call(ProjectAccessFactory.java:92) 在 com.google.gerrit.httpd.rpc.project.ProjectAccessFactory.call(ProjectAccessFactory.java:40) 在 com.google.gerrit.httpd.rpc.Handler.to(Handler.java:65) 在 com.google.gerrit.httpd.rpc.project.ProjectAdminServiceImpl.projectAccess(ProjectAdminServiceImpl.java:75) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 在 java.lang.reflect.Method.invoke(Method.java:597) 在 com.google.gwtjsonrpc.server.MethodHandle.invoke(MethodHandle.java:91) 在 com.google.gwtjsonrpc.server.JsonServlet.doService(JsonServlet.java:382) 在 com.google.gwtjsonrpc.server.JsonServlet.service(JsonServlet.java:268) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 在 com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:216) 在 com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:141) 在 com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:93) 在 com.google.inject.servlet.FilterChainInspiration.doFilter(FilterChainInspiration.java:63) 在 com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:134) 在 com.google.inject.servlet.FilterChainInspiration.doFilter(FilterChainInspiration.java:59) 在 com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:134) 在 com.google.inject.servlet.FilterChainInspiration.doFilter(FilterChainInspiration.java:59) 在 com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:134) 在 com.google.inject.servlet.FilterChainInspiration.doFilter(FilterChainInspiration.java:59) 在 com.google.gwtexpui.server.CacheControlFilter.doFilter(CacheControlFilter.java:76) 在 com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:129) 在 com.google.inject.servlet.FilterChainInspiration.doFilter(FilterChainInspiration.java:59) 在 com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:134) 在 com.google.inject.servlet.FilterChainInspiration.doFilter(FilterChainInspiration.java:59) 在 com.google.gerrit.httpd.RequestCleanupFilter.doFilter(RequestCleanupFilter.java:54) 在 com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:129) 在 com.google.inject.servlet.FilterChainInspiration.doFilter(FilterChainInspiration.java:59) 在 com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:122) 在 com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:110) 在 org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322) 在 org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:473) 在 org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:921) 在 org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:403) 在 org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:856) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117) 在 org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:114) 在 org.eclipse.jetty.server.handler.RequestLogHandler.handle(RequestLogHandler.java:59) 在 org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:114) 在 org.eclipse.jetty.server.Server.handle(Server.java:352) 在 org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:596) 在 org.eclipse.jetty.server.HttpConnection$RequestHandler.content(HttpConnection.java:1069) 在 org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:805) 在 org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:218) 在 org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:426) 在 org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:510) 在 org.eclipse.jetty.io.nio.SelectChannelEndPoint.access$000(SelectChannelEndPoint.java:34) 在 org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:40) 在 org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:450) 在 java.lang.Thread.run(Thread.java:662)

编辑:更改回稳定版本一切正常。

I am trying to install gerrit over our git repositories. We have lots of projects that saved in git repositories. After installations everything seems ok from web interface. I can see the projects from admin>projects menu. I can add users or groups to gerrit. But if I want to add access rules to project when I click on Access link from admin menu server returns Application Error, Server Error(Internal Server Error).

If I change any settings from general tab of admin menu I can pass this error but this time I cannot commit my changes to my git server.

Full trace of error log is like this;

[2011-06-10 10:36:20,111] WARN / : Error in projectAccess
java.lang.NullPointerException
at com.google.gerrit.server.git.VersionedMetaData.getRevision(VersionedMetaData.java:69)
at com.google.gerrit.httpd.rpc.project.ProjectAccessFactory.call(ProjectAccessFactory.java:92)
at com.google.gerrit.httpd.rpc.project.ProjectAccessFactory.call(ProjectAccessFactory.java:40)
at com.google.gerrit.httpd.rpc.Handler.to(Handler.java:65)
at com.google.gerrit.httpd.rpc.project.ProjectAdminServiceImpl.projectAccess(ProjectAdminServiceImpl.java:75)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.google.gwtjsonrpc.server.MethodHandle.invoke(MethodHandle.java:91)
at com.google.gwtjsonrpc.server.JsonServlet.doService(JsonServlet.java:382)
at com.google.gwtjsonrpc.server.JsonServlet.service(JsonServlet.java:268)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:216)
at com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:141)
at com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:93)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:63)
at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:134)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:59)
at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:134)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:59)
at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:134)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:59)
at com.google.gwtexpui.server.CacheControlFilter.doFilter(CacheControlFilter.java:76)
at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:129)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:59)
at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:134)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:59)
at com.google.gerrit.httpd.RequestCleanupFilter.doFilter(RequestCleanupFilter.java:54)
at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:129)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:59)
at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:122)
at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:110)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:473)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:921)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:403)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:856)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:114)
at org.eclipse.jetty.server.handler.RequestLogHandler.handle(RequestLogHandler.java:59)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:114)
at org.eclipse.jetty.server.Server.handle(Server.java:352)
at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:596)
at org.eclipse.jetty.server.HttpConnection$RequestHandler.content(HttpConnection.java:1069)
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:805)
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:218)
at org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:426)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:510)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.access$000(SelectChannelEndPoint.java:34)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:40)
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:450)
at java.lang.Thread.run(Thread.java:662)

Edit: Changed back to stable version everything went ok.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

近箐 2024-11-21 13:37:26

我们使用以下模式将旧项目添加到 gerrit,效果完美:

  1. 在 gerrit 中创建新项目。
  2. 打开您的 git 存储库。
  3. git Remote add 您的 gerrit 存储库。
  4. git push remote_name master:refs/heads/master (如果有的话,其他分支也一样)。

We use following schema to add old project to gerrit, works perfect:

  1. Create fresh project in your gerrit.
  2. Open your git repository.
  3. git remote add your gerrit repository.
  4. git push remote_name master:refs/heads/master (same for other branches if you have).
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文