2016-07-20 29 views
9

Tổ chức của tôi đang chuyển từ Bitbucket sang Github để quản lý dự án. Hôm nay, tôi đã cố gắng chuyển dự án mới nhất của chúng tôi từ Bitbucket sang Github, bằng cách sử dụng SourceTree. Tôi đã thêm một kho lưu trữ từ xa thứ hai vào dự án (sử dụng URL của kho đích trên Github), đưa mọi thứ cập nhật, và sau đó cố gắng đẩy mã vào kho lưu trữ. Một hộp xuất hiện, yêu cầu mật khẩu cho tài khoản Github của tôi. Tôi đã nhập mật khẩu (đúng) của tôi và nhấp vào 'OK' và hộp thoại xuất hiện trở lại. Tôi đã nhập vào mật khẩu của mình (chính xác) một lần nữa, và nó cũng làm như vậy.SourceTree liên tục yêu cầu mật khẩu Github

Tên người dùng của tôi được xác định chính xác, mật khẩu của tôi là chính xác và tôi đã thử cập nhật SourceTree vì tôi đã nghe nói rằng đó là sự cố với phiên bản trước. Vấn đề vẫn tồn tại.

Tôi đang sử dụng SourceTree 2.3.1

+0

Bạn đang sử dụng [xác thực hai yếu tố] (https://help.github.com/articles/about-two-factor-authentication/) trên GitHub? – Chris

+0

Có, tôi là @Chris –

Trả lời

10

Nếu bạn đang sử dụng xác thực hai yếu tố với GitHub bạn sẽ cần phải create a personal access token and use it with SourceTree:

Để làm việc với xác thực hai yếu tố GitHub trong SourceTree bạn chỉ có thể sử dụng truy cập của bạn thẻ thay vì mật khẩu của bạn. Các bước để thực hiện việc này như sau:

  1. Đi tới Cài đặt truy cập cá nhân của bạn cài đặt trong GitHub.
  2. Nhấp vào nút Tạo mã thông báo mới.
  3. Đặt tên cho mã thông báo mô tả.
  4. Chọn phạm vi bạn muốn cấp mã thông báo này.
  5. Nhấp vào nút Tạo mã thông báo.
  6. Sao chép mã thông báo và sử dụng mã đó làm mật khẩu trong kho lưu trữ được lưu trữ của bạn.

Bạn có thể tìm thêm thông tin về điều này trên GitHub's help here.

Người dùng

Mac: Nếu SourceTree của bạn vẫn tiếp tục yêu cầu mật khẩu, hãy vào Terminal và gõ này:

git config --global credential.helper osxkeychain 
+0

** Mã thông báo truy cập cá nhân ** ở ** Cài đặt **/** Cài đặt dành cho nhà phát triển ** – Felix

0

Nếu bạn không sử dụng GitHub 2FA, một lý do khác để yêu cầu bạn mật khẩu của bạn là:

repo url GitHub của bạn là một ssh một, không phải là một https một.
Vì git không tìm thấy khóa ssh của bạn (hoặc khóa ssh của bạn không được đăng ký với tài khoản GitHub), nó không quay lại cơ chế tài khoản/mật khẩu.

Nếu bạn đang sử dụng 2FA (và url https), thì bạn need a personal token as a password.

0

Trong trường hợp của tôi, điều này đã xảy ra với một submodule rằng đã mặc định thành https mặc dù dự án chính đang sử dụng ssh. Tôi đã sửa nó bằng cách thay đổi đường dẫn repo của submodule trong Cài đặt Kho lưu trữ của SourceTree để sử dụng đường dẫn ssh thay vì https.

2

thiết bị đầu cuối mở và sao chép repo của bạn.url kho phải có usedid của bạn, Đối với ví dụ:

$ git clone https://<username>@github.com/<userId>/<reponame>.git 
$ git clone https://[email protected]/mak123/<reponame>.git 

Sau đó kéo và thả các thư mục nhân bản vào sourceTree window.You cũng có thể làm bằng cách nhấn vào nút "+ New Repository" và từ menu bằng cách chọn "Add Kho lưu trữ cục bộ hiện tại ". Nó có thể yêu cầu mật khẩu một lần nữa nhưng lần này nó sẽ được thêm vào keychain của bạn.

0

Tôi đã có một điều tương tự sau khi cập nhật; Tôi đã cố gắng tái thêm thông tin bitbucket của tôi, thay đổi các giao thức, vv không có may mắn, cho đến khi ...

  1. Tôi mở keychain của tôi và tìm kiếm bitbucket (có thể là giống nhau cho github, chỉ cần tìm kiếm github thay) trong danh mục Mật khẩu.

  2. Tôi thấy rằng tôi có nhiều Phím truy cập cho người dùng, vì vậy tôi đã đóng kho lưu trữ, xóa tất cả các khóa của "mật khẩu ứng dụng", mở tùy chọn SourceTree> Tài khoản> xóa tài khoản của tôi và thêm lại nó (đăng nhập như thường lệ - Tôi đã sử dụng Cơ bản với HTTPS).

  3. Keychain yêu cầu quyền lưu mật khẩu, mà tôi đã nói có và bây giờ tôi chỉ thấy một khóa của loại "mật khẩu ứng dụng".

Tôi đã mở kho lưu trữ của mình từ trình duyệt kho và không có mật khẩu!

Điều này đã làm tôi nhớ cả tuần! Nếu điều này giúp bạn, bạn có thể thực hiện một điệu nhảy nhỏ với tôi ngay bây giờ :)

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