Tôi đang cố gắng sao chép ngã ba cá nhân của tôi trên github bằng cách sử dụng giao thức git + ssh với TortoiseHg. Nó cho tôi một lỗi khá kỳ lạ. Đây là lệnhNhân bản kho lưu trữ github đọc-ghi bằng cách sử dụng TortoiseHg
hg clone git+ssh://[email protected]:myusername/thefork.git
Đây là sau khi tôi đã cài đặt mô-đun hg-git và nó hoạt động tốt để sao chép bằng cú pháp git: //. Nhưng tôi tin rằng nó đang gặp rắc rối với ssh. Lỗi tôi nhận được là cái này.
importing Hg objects into Git
[Error 2] The system cannot find the file specified
Tôi đã thử thêm bằng tay lệnh ssh vào file mercurial.ini như thế này
[ui]
username = [email protected]
ssh="C:\Program Files\TortoiseHg\TortoisePlink.exe" -ssh -2 -i "C:\Source\SSHPrivateKey.ppk"
Nhưng tôi vẫn nhận được lỗi tương tự. Bất kỳ ý tưởng?
Cập nhật 1
Nếu tôi chạy lệnh tương tự từ Git Bash shell nó hoạt động tốt. Tôi hiểu rồi.
importing Hg objects into Git
Counting objects: 1559, done.
Compressing objects: 100% (586/586), done.
Total 1559 (delta 960), reused 1534 (delta 947)
importing Git objects into Hg
at: 0/86
updating to branch default
219 files updated, 0 files merged, 0 files removed, 0 files unresolved
Tôi giả sử đó là vì nó có thể tìm thấy ssh.exe và khóa của tôi đã được nhập. Tôi có thể thêm đường dẫn của ssh.exe vào cửa sổ lệnh nhắc đường dẫn và sau đó thay vì lỗi trước đó tôi nhận được điều này.
importing Hg objects into Git
Permission denied (publickey).
abort: the remote end hung up unexpectedly
Dường như nó đang tìm kiếm cụ thể cho ssh.exe eventhough Tôi đã chỉ định đường dẫn ssh thay thế trong mercurial.ini. Nhưng dự đoán của tôi ở đây là cấu hình đó chỉ dành cho một máy chủ được kích hoạt bằng ssh và không áp dụng cho plugin hg-git.
Lưu ý để tự - hãy kiên nhẫn. Một khi tôi đã học để chờ đợi trong 5 phút hoặc lâu hơn nó có thể làm để sao chép một repo rất lớn, hg-git làm việc tốt. –