2011-08-22 24 views
9

Tôi là người dùng git lần đầu tiên cố gắng thiết lập egit trong Eclipse để tôi có thể tiếp tục dễ dàng mã thông qua Eclipse. Vấn đề là, mỗi khi tôi cố gắng sao chép một repo thông qua egit, nó mang lại cho tôi lỗi "Không thể liệt kê các nhánh có sẵn. Lý do: ssh: //[email protected]: 22 Cụm mật khẩu cho /Users/elifinkelshteyn/.ssh/id_rsa. " Điều này thực sự lạ khi tôi có thể nhân bản qua terminal bằng cách sử dụng cùng id_rsa đó, và tôi đã xác minh trong các thuộc tính ssh của Eclipse mà nó đang cố gắng sử dụng khóa chính xác. Đưa cái gì?Egit Từ chối chấp nhận id_rsa

+0

Như VonC nói dưới đây, đây là lỗi hiện tại, nhưng chỉ trong các bản dựng hàng đêm mới nhất. Tôi đã có thể khắc phục sự cố của mình bằng cách quay lại bản dựng ổn định mới nhất, tại thời điểm đó tôi đã được nhắc chính xác cho mật khẩu của mình. * Nếu bất kỳ ai khác gặp vấn đề này, chỉ cần quay trở lại bản ổn định mới nhất *. – Eli

+0

Điều này _could_ được coi là một bản sao của câu hỏi SO [EGit - SSH Fails tại Passphrase (khi kết nối với GitHub)] (http://stackoverflow.com/q/6316014/1020470) –

Trả lời

5

Chỉ cần xác nhận: đây là lỗi hiện tại (issue 353561).
Và cụm mật khẩu có thể vẫn là sự cố tùy thuộc vào mã hóa bạn đã sử dụng khi tạo khóa (bug 326526).

Tuy nhiên, cụm mật khẩu có nghĩa vụ phải được hỗ trợ (là Egit user guide mentions).

0

Dường như tệp /Users/elifinkelshteyn/.ssh/id_rsa của bạn yêu cầu mật khẩu và tôi không chắc chắn rằng triển khai ssh trong Eclipse có biết cách nhắc bạn thực hiện một lần hay không. Nó đang cù lét phía sau bộ não của tôi rằng có lẽ một gói ssh-auth bạn cần cài đặt cho mac để nó có thể nhắc, và nếu bạn có thể tìm hiểu thêm về điều đó, nó có thể là lý tưởng. Tuy nhiên, cách giải quyết ngắn hạn là tạo một khóa rsa mới không sử dụng mật khẩu, tải lên github và đặt nhật thực để sử dụng nó.

+0

Bảo vệ khóa riêng của bạn không có gì để làm với khóa công khai từ cặp khóa mà bạn tải lên GitHub. –

3

Như VonC nói, đó là lỗi mà việc triển khai SSH mà EGit sử dụng không thể xử lý bất cứ điều gì trừ khóa riêng tư được mã hóa 3DES. Nếu bạn thích tôi, bạn có các khóa mã hóa AES, vì vậy nó không giải mã được chúng. Có một nhận xét trong báo cáo lỗi đó, đây là liên kết trực tiếp đến nhận xét https://bugs.eclipse.org/bugs/show_bug.cgi?id=326526#c9

Nhận xét đó cung cấp giải pháp làm việc: các phiên bản gần đây của EGit tôn trọng biến môi trường GIT_SSH, đặt thành/usr/bin/ssh hoặc thậm chí plink.exe nếu bạn đang ở trên cửa sổ nên giải quyết vấn đề.

+0

Khắc phục khác là cập nhật JSch (triển khai ssh/ecit ssh) thành phiên bản 1.44, mà _does_ giải mã mật khẩu AES và được giải thích trong lỗi [@Lynden Shields] (http://stackoverflow.com/users/78823/lynden -shields) ghi chú, và cũng có trong câu hỏi SO [EGit - SSH Fails tại Passphrase (khi kết nối với GitHub)] (http://stackoverflow.com/a/7032313/1020470) –

7

nếu bạn nhận được một nhắc nhở cho các cụm từ mật khẩu nhưng thực không chấp nhận các cụm từ mật khẩu, hãy thử như sau:

đặt biến môi trường GIT_SSH cho khách hàng ssh của bạn ví dụ bằng cách thêm

export GIT_SSH=/usr/bin/ssh 

để .bash_rc bạn

trên Mac OSX, thiết bị đầu cuối mở và gõ:

cd 
mkdir .MacOSX 
cd .MacOSX 
echo "" > environment.plist 
open environment.plist 

thêm một KEY = GIT_SSH với VALUE =/usr/bin/ssh và tiết kiệm tập tin.

Sau khi liên hệ lại với tài khoản của bạn, nó sẽ hoạt động.

+0

Tôi đã gặp phải vấn đề này với Ubuntu 12.04, Eclipse Helios, OpenSSH_5.9p1 Debian-5ubuntu1 và eGit 2.1.0.201209190230-r.Eclipse đã nhắc tôi cho cụm mật khẩu của tôi trên khóa cá nhân id_rsa của tôi và sẽ không chấp nhận đầu vào của tôi. Tôi làm theo [các hướng dẫn này] [help_ticket] và chạy câu lệnh sau trong dòng lệnh và thêm nó vào ~/.bashrc của tôi: xuất GIT_SSH =/usr/bin/ssh Sau khi khởi động lại Eclipse, tôi đã được nhắc nhập cụm từ mật khẩu bằng trình quản lý khóa Gnome thay thế. Cụm mật khẩu của tôi đã được chấp nhận và tôi có thể kết nối với repo github của tôi. [help_ticket]: http://stackoverflow.com/a/7901786/1304537 – islandlinux

1

Một khoảng thời gian đáng kể đã trôi qua kể từ khi OP và tôi vẫn gặp sự cố tương tự. Đối với những người vẫn gặp sự cố này, điều này có thể hữu ích:

Đảm bảo bạn đã thực hiện thiết lập điều khiển từ xa. Nó làm việc cho tôi khi tôi nhận được cả hai Không thể nhận được kho lưu trữ từ xa refs -problems ("... Cụm mật khẩu cho ..." và "Auth fail" trong hộp thoại "Push ...").

Với điều kiện là bạn đã:

  1. Cài đặt khóa SSH của bạn với Github (Window> Preferences> General> Network Connections> SSH2)

  2. Cài đặt kho địa phương của bạn (bạn có thể làm theo this guide cho rằng)

  3. tạo một kho lưu trữ Github (same guide)

... dưới đây là cách bạn làm điều đó:

  • Chuyển đến ĐUA XE xem (Window> Show View> Other> ĐUA XE)
  • Mở rộng Repository của bạn và Remotes click chuột phải - ->"Tạo từ xa"
  • "Remote Name": nguồn gốc, "Cấu hình đẩy": kiểm tra ->bấm vào nút "OK"
  • Nhấp vào "Change ..." nút
  • Dán git URI và chọn giao thức ssh ->bấm vào nút "Finish"
  • Bây giờ, bấm "Save và Push" và VỚI DOANH NGHIỆP bạn sẽ nhận được một mật khẩu nhanh chóng ->nhập khóa công khai mật khẩu đây (với điều kiện bạn DID (bạn cũng nên) thiết lập một mật khẩu để khóa công khai của bạn) ->bấm vào nút "OK"
  • Bây giờ bạn nên nhận được xác nhận cửa sổ nói "đẩy để YourRepository - nguồn gốc" ->bấm vào nút "OK"
  • Push to upstream, nhưng việc sử dụng thời gian này "Configured kho từ xa" như Destination Git kho của bạn
  • Go được cho mình một cũng kiếm được tách cà phê!
Các vấn đề liên quan