Địa chỉ ssh đăng ký với git từ xa có thể đã bao gồm tên người dùng, do đó bạn sẽ cần phải sử dụng một url ssh hoàn chỉnh như:
[email protected]:arepo
Điều đó sẽ không làm việc, bởi vì ssh sẽ sử dụng các khóa công khai/riêng tư mặc định (hiện đang được người dùng đầu tiên sử dụng để xác thực).
Bạn có thể đăng ký một từ xa mới trong cấu hình địa phương của bạn:
# use the current ssh address registered for origin, changing just the user
# but you need a config file
git remote add originOtheruser otheruser:arepo
Bạn phải có một tập tin $HOME/.ssh/config
, để xác định các mục nhập ssh 'otheruser', bởi vì ssh cần phải biết những gì công cộng/khóa riêng nó cần phải sử dụng: nó không thể là những người mặc định ($HOME/.ssh/id_rsa
và $HOME/.ssh/id_rsa.pub
)
Xem ví dụ "how to add deploy key for 2 repo with 1 user on github"
Host otheruser
HostName remote
User otheruser
IdentityFile ~/.ssh/otheruser
Đó giả bạn đã được lưu trữ/phím công tư cho otheruser như:
$HOME/.ssh/otheruser
$HOME/.ssh/otheruser.pub
Bây giờ, bạn có thể sử dụng từ xa mới để đẩy:
git push originOtheruser master
Có, tôi đã thử nó. Thông thường tôi sao chép-dán từ "git remote -va". Nó hoạt động, mặc dù nó tạo ra một nhánh theo dõi từ xa bổ sung khi kéo. – Andor
Tôi thường sử dụng pubkey để đẩy các cam kết. Mặc dù tôi đã chỉ định một người dùng khác, tôi vẫn nhận được 'Permission denied (publickey). gây tử vong: Không thể đọc từ kho lưu trữ từ xa.' Làm thế nào để đẩy để tôi có thể nhập mật khẩu cho tài khoản khác? – nipponese