2015-01-17 22 views
12

Tôi muốn đẩy README.md sang Github.
Sử dụng Ubuntu 14.04LTS
Vì vậy, tôi cam kết trong các bước sau.Đẩy để Git trả về Mã lỗi 403 gây tử vong

echo "# test" >> README.md 
git init 
git add README.md 
git commit -m "first commit" 
git remote add origin https://github.com/user/repo.git 
git push -u origin master 

Nhưng, xảy ra lỗi dưới đây.

error: The requested URL returned error: 403 Forbidden while accessing https://github.com/user/repo.git/info/refs 

fatal: HTTP request failed 

Tôi biết giải quyết lỗi này theo cách này

git remote set-url origin https://[email protected]/user/repo.git 

Bằng cách này, tôi phải nhập mật khẩu.

$ git push origin master 
Password: 

Nhưng tôi ghét phải nhập mật khẩu.

Tôi đã kiểm tra điều này, nhưng tôi không giải quyết.
Pushing to Git returning Error Code 403 fatal: HTTP request failed

Hãy cho tôi biết cách nhấn mà không cần mật khẩu.

Trả lời

5

Bạn phải sử dụng https và nhập mật khẩu của bạn hoặc sử dụng ssh (và liên kết chìa khóa ssh công cộng của bạn vào tài khoản github của bạn)

+0

cảm ơn bạn đã trả lời. lý do tôi không thể sử dụng https mà không có mật khẩu? Cho đến một lúc trước, tôi có thể sử dụng https mà không cần mật khẩu. – technuma

+0

Bạn có thể kéo từ https mà không cần mật khẩu nếu bạn sao chép một repo là chỉ đọc (nghĩa là không có tên người dùng), nhưng bạn không thể đẩy đến một kho lưu trữ https mà không có mật khẩu trừ khi bạn sử dụng mật khẩu: https://help.github.com/articles/why-is-git-always-ask-for-my-mật khẩu/ – Fernando

+0

Cảm ơn bạn rất nhiều. Có lẽ, tôi không thể đẩy từ nhiều thiết bị. Bởi vì, tôi cần làm git này từ xa thêm https xứ: //[email protected]/user/repo.git Có lẽ, tôi không thể đẩy xa git này từ xa thêm https gốc: // github .com/user/repo.git – technuma

5

tôi đã cố gắng hết sức mình và đã tìm kiếm những nguyên nhân/giải pháp của lỗi:

Error: The requested URL returned error: 403 while accessing 
https://github.com/Joey-project/repo.git/info/refs 
fatal: HTTP request failed 

Tôi tin rằng một trong những lý do chính khiến điều này xảy ra là do thông tin xác thực đăng nhập không hợp lệ từ máy cục bộ của bạn đến máy chủ.

Nếu tôi nhớ không lầm, người ta phải

(1) Đảm bảo rằng bạn có một phiên bản git ổn định

(2) Đảm bảo điều khiển từ xa là đúng

(3) Cung cấp access token nếu 2FA được kích hoạt

(4) kiểm tra quyền của bạn (username/password)

(5) Sử dụng ssh thay vì https

Pushing to Git returning Error Code 403 fatal: HTTP request failed có thể hữu ích, có nhiều thông tin bổ sung liên quan đến sự cố của bạn.

Goodluck! Tôi hy vọng nó giúp bạn

+0

Cảm ơn bạn đã trả lời. "Thông tin đăng nhập xấu" nghĩa là gì? Mật khẩu github của tôi có yếu không? – technuma

0

Chỉ cần cập nhật client git của bạn và bạn không nên vấn đề này nữa

2

Nếu bạn đang sử dụng nhiều tài khoản github thì đó cũng có thể là nguyên nhân của vấn đề. Git lưu tên người dùng và mật khẩu bạn sử dụng đầu tiên trong kho thông tin xác thực của hệ điều hành. Mọi yêu cầu tiếp theo sẽ sử dụng những chi tiết đó bất kể IDE của bạn nói gì với bạn.

8

Điều này có thể giải quyết vấn đề của bạn:

git remote set-url origin https://username:[email protected]/user/repo.git 
+0

@JanDoggen Đây không phải là câu trả lời chỉ có liên kết, nếu bạn nhìn gần hơn để trả lời, bạn thấy rằng dilei cho câu trả lời của câu hỏi không phải là một liên kết. –

+0

@Yusuf OK. Và (s) ông vẫn nên giải thích * tại sao * điều này có thể giải quyết vấn đề. Câu trả lời 'Chỉ mã' cũng có giá trị thấp trên trang web này. –

+0

Lỗi @JanDoggen 403 có nghĩa là vấn đề ủy quyền, vì vậy câu trả lời này gửi tên người dùng và mật khẩu trên url từ xa và không có lỗi 403 cho điều đó. –

2

Nếu vấn đề của bạn là kết quả của một sự thay đổi một repo (kết quả là một tên người dùng, mật khẩu không phù hợp), hãy thử này tại cửa sổ dòng lệnh:

git credential-osxkeychain erase 
host=github.com 
protocol=https 
[Press Return] 

nó sẽ nhắc bạn cho tên người dùng và mật khẩu của bạn.

Xem https://help.github.com/articles/updating-credentials-from-the-osx-keychain/

0

Nếu bạn đang làm việc với một bản sao hoặc ngã ba, kích đúp kiểm tra xem URL kho bạn đang cố gắng để đẩy đến là URLngã ba của bạn thay vì chủ sở hữu ban đầu của URL kho lưu trữ.

git remote -v 
Các vấn đề liên quan