2012-01-09 29 views
13

Tôi có máy chủ web được cài đặt gitolite và nơi tôi đăng nhập bằng khóa ssh của mình. Thông thường tôi chỉ cần sử dụng git trên máy chủ chính nó bằng cách sử dụng dòng lệnh nhưng đối với một dự án mới tôi cần phải sao chép một repo trên cửa sổ của tôi pc và tôi muốn sử dụng SmartGit cho việc này.SmartGit sẽ không xác thực với ssh

Nhưng tôi đã dành vài giờ để sao chép repo qua Smartgit. Khi Git từ xa tôi sử dụng url tôi thường sử dụng trên máy chủ: tôi @ my-server: the-repo sau đó sau một thời gian tôi nhận được hộp thoại 'SSH Authentication' và tôi chọn khóa riêng của mình, như tôi sẽ làm cho pagent và đặt vào Cụm mật khẩu của tôi. Nhưng khi tôi nhấp vào đăng nhập nó chỉ cố gắng kết nối một lúc và sau đó cho tôi thấy hộp thoại 'Xác thực SSH' một lần nữa. Không có thông báo lỗi hoặc bất cứ điều gì.

Tôi đã cố gắng sao chép bản ghi nhớ có cùng dữ liệu thông qua dòng lệnh và hoạt động tốt. Vì vậy, có cái gì tôi đang mất tích?

Trả lời

19

Cần lưu khóa riêng tư ssh của tôi dưới dạng khóa OpenSSH trong PuTTYgen vì SmartGit chỉ hiểu định dạng đó.

+1

Nơi để lưu nó? – zygimantus

+1

Thật kỳ lạ, nhưng nếu bạn bấm vào PuTTYgen * "Lưu khóa riêng" * hoặc * "Lưu khóa công khai" * nó sẽ không hoạt động. Bạn cần lưu thông qua menu * Chuyển đổi → Xuất OpenSSH Key *. Tệp này sẽ bị xóa – Adobe

13

Vâng, đúng vậy!

Tôi chỉ muốn đi vào chi tiết để giúp những người bắt đầu từ đầu:

trên cửa sổ bạn có thể làm các thủ tục foollowing:

  1. Install msysgit từ Here
  2. Để tạo public/private cặp khóa khi cần thiết bởi nhiều máy chủ git (như Assembla) sử dụng PuTTYgen mà bạn tìm thấy here: nhấp vào Tạodi chuột của bạn cho đến khi nó cho bạn biết rằng khóa được tạo. Tùy chọn, nhập cụm từ mật khẩu để bảo vệ riêng của bạn quan trọng
  3. Lưu hoặc sao chép các khóa công khai tại nhu cầu của bạn
  4. Lưu private key để sử dụng với SmartGit sử dụng giọng nói đơn Chuyển đổi/Xuất OpenSSH chính
  5. Sử dụng các tập tin cuối cùng để xác thực trong SmartGit
4

Tôi thấy dễ dàng hơn khi thay đổi SmartGit | Sở thích | Lệnh | Thực thi để sử dụng "C: \ Program Files (x86) \ Git \ bin \ git.exe", và sau đó đặt GIT_SSH = plink trong hệ thống env.

1

Nếu bạn muốn sử dụng putty như ssh client, hãy làm theo các bước dưới đây:

  1. Sửa | Preferences | Bình luận | Authentication, chọn Use System SSH Client
  2. Trong biến cửa sổ hệ thống, thiết lập GIT_SSH = Plink (nơi vị trí plink.exe putty của)

Sau đó, hãy sử dụng cuộc thi và tải các tin quan trọng

1

Nếu bạn đang sử dụng SmartGit trên MacOS X, sự cố này gây ra một hộp thoại không mong muốn được hiển thị trong Trình tìm kiếm: "SSH - Enter passphrase for key '/Users/username/.ssh/id_rsa':" và bật lên khi SmartGit được khởi chạy.Nó trông giống như thế này:

SmartGit SSH passphrase prompt

Đó là kỳ quặc và khó hiểu như thế nào trông giống như một hộp thoại Finder, không có tài liệu tham khảo tại tất cả để SmartGit. Nó thường do mật khẩu khóa SSH không được lưu trữ trong ứng dụng Keychain Access. Đó là nơi SmartGit sẽ tìm kiếm nó. Bạn sẽ cần phải thêm nó vào đó, sử dụng các hướng dẫn:

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