2014-09-26 28 views
12

Tôi đã sử dụng Gitlab mà không gặp vấn đề gì trong vài tháng nay. Nhưng, kể từ hôm qua, tôi không thể "tiếp cận" (lấy, đẩy, ...) Gitlab từ IDE Eclipse của tôi nữa.Gitlab không thể mở lỗi git-upload-pack

Cho dù tôi có làm việc trong công ty của mình hay không (có thể là vấn đề proxy) hoặc ở nhà.

tôi nhận được thông báo lỗi sau:

https://gitlab.com/XXX/XXX.git: 
    cannot open git-upload-pack 
    cannot open git-upload-pack 

Nhìn vào Eclipse của tôi .log, nguyên nhân là:

Caused by: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure 
    at sun.security.ssl.Alerts.getSSLException(Unknown Source) 
    at sun.security.ssl.Alerts.getSSLException(Unknown Source) 
    at sun.security.ssl.SSLSocketImpl.recvAlert(Unknown Source) 
    at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source) 
    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source) 
    at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) 
    at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source) 
    at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source) 
    at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source) 
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) 
    at java.net.HttpURLConnection.getResponseCode(Unknown Source) 
    at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(Unknown Source) 
    at org.eclipse.jgit.transport.http.JDKHttpConnection.getResponseCode(JDKHttpConnection.java:98) 
    at org.eclipse.jgit.util.HttpSupport.response(HttpSupport.java:168) 
    at org.eclipse.jgit.transport.TransportHttp.connect(TransportHttp.java:460) 
    ... 10 more 

Thêm http.sslVerify=false trong cấu hình Eclipse/Git tôi đã không giúp ...

Bất kỳ ý tưởng nào tại sao điều này (đột nhiên) xảy ra?

+0

Có thể chứng chỉ của bạn chưa hoàn tất, như trong https://github.com/gitlabhq/gitlab-shell/issues/21#issuecomment-15537477 – VonC

+0

Tôi đang sử dụng giao thức https để kết nối với gitlab. Theo như tôi biết, không cần khai báo chứng chỉ. Và nó được sử dụng để hoạt động hoàn hảo cho đến bây giờ. Hơn nữa, tôi tìm thấy một vấn đề khác ... Khi tôi đăng nhập vào không gian gitlab.com, nếu tôi truy cập trang dự án và cố tải xuống dưới dạng zip, tôi nhận được tệp 16Mb lần đầu tiên. Nhưng bây giờ, khi tôi thử lại, tôi chỉ nhận được tệp 1Mb, bất kỳ nhánh nào tôi cố tải xuống. Các kết nối và tải xuống này có thể xảy ra do thay đổi cấu hình của máy chủ web gitlab.com không? Có ai phải đối mặt với cùng một vấn đề không? –

+0

Có, CA (chứng chỉ Authority) có liên quan với https (chứng chỉ SSL), như được minh họa trong http://stackoverflow.com/a/4454754/6309. Nhưng vì 'http.sslVerify = false' không giúp được gì, đây có thể là một vấn đề khác. – VonC

Trả lời

5

Tôi đã gặp lỗi tương tự với một máy chủ Gitlab khác. Tôi đào sâu vào nó và phát hiện ra rằng tất cả các mật mã có sẵn trên máy chủ đều có ít nhất 256 bit. Tiêu chuẩn Oracle Java tàu với crypto đó là giới hạn 128 bit cho một số thuật toán. Sau khi cài đặt unlimited strength crypto package từ Oracle vấn đề đã biến mất.

Hầu như quên, gói sức mạnh không giới hạn chỉ hợp pháp có sẵn ở Hoa Kỳ. Nếu bạn ở bên ngoài nước Mỹ thì tôi nghĩ rằng OpenJDK sẽ làm việc thay thế.

+0

Có lẽ nó đáng nói đến là [giải pháp này cũng hoạt động cho NetBeans IDE] (http://stackoverflow.com/a/26236936/2541501). Cảm ơn. – PJvG

+2

Tôi thực sự gặp phải lỗi khi tôi nhận ra rằng một trong các máy chủ Jenkins của tôi không thể sao chép kho lưu trữ từ máy chủ GitLab. Thực sự vấn đề này có thể gặp phải bởi bất kỳ chương trình Java nào cố gắng truy cập GitLab. – jgibson

+0

@jgibson là chính xác; điều này đã ảnh hưởng đến máy chủ TeamCity của tôi. – jstark

0

Theo giải thích của @jgibson này có vẻ liên quan đến các thuật toán mật mã

Tôi không cố gắng gói crypto sức mạnh không giới hạn nhưng chạy Eclipse với Java 8.0.25 giải quyết vấn đề này đối với tôi.

0

Ahh có vấn đề này chỉ đơn giản là làm điều này:

trong nhật thực, đi đến Windows-> Prefrences-> General-> Mạng Connections-> SSH

  • Bấm tab "Quản lý khóa"
  • Nhấp vào tạo khóa RSA.
  • Bấm Apply -Copy và dán tất cả mọi thứ trong hộp "sha-rsa ..." vào gitlab-> profilie-thêm SSH key

nỗ lực bản sao một lần nữa thông qua ssh.

+0

Sự khác nhau giữa nhân bản 'SSH' và nhân bản' https' là gì. – viper

0

Đối với tôi đã không giúp các bài đăng trước, nhưng tôi đã có thể khắc phục điều này bằng cách thay đổi các tùy chọn bảo mật của Java. Trong cài đặt hệ thống, bạn có thể tìm thấy "Bảng điều khiển Java" trong đó tab "Bảo mật" cho phép bạn thay đổi cấp độ bảo mật.

Phụ thuộc vào phiên bản bạn sử dụng, bạn sẽ thấy các tùy chọn khác nhau. Nó làm việc cho tôi, sau khi thiết lập này để "thấp". Nhưng trên các hệ thống khác nhau, bạn chỉ có thể có các tùy chọn "cao"/"rất cao". Nó phụ thuộc vào các phiên bản Java đã cài đặt.

0

enter image description here

tôi đã nhận lỗi tương tự khi github đã giảm, điều này là do các thiết lập proxy của quản trị mạng của chúng tôi, tôi sau đó một lần nữa kết nối với một nhà cung cấp internet github đã làm việc tốt

này giải quyết của tôi vấn đề

EGit: cannot push, cannot pull

  1. thay đổi nguồn gốc vào tài khoản của ngã ba tôi và kéo.
  2. đã thay đổi nguồn gốc trở lại giá trị thực tế và được kéo.
+0

cũng có một cái nhìn tại một số quốc gia đang chặn github https://en.wikipedia.org/wiki/Censorship_of_GitHub – Mateen

Các vấn đề liên quan