> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/latex/vi/co-so-tri-thuc/042-git-integration-authentication-tokens.md).

# Mã xác thực tích hợp Git

**Trang này mô tả phương thức đăng nhập bằng mã thông báo xác thực Git để truy cập các dự án của bạn thông qua Overleaf's** [**tích hợp Git**](/latex/vi/co-so-tri-thuc/040-git-integration.md). Phương thức mã thông báo xác thực được mô tả ở đây là phương thức đăng nhập duy nhất khả dụng cho cả Overleaf Cloud và Server Pro. Phương thức xác thực cũ dựa trên tên người dùng và mật khẩu hiện không còn khả dụng.

Tích hợp Git của Overleaf cho phép bạn sao chép dự án Overleaf của mình vào một kho lưu trữ cục bộ, coi dự án Overleaf của bạn như một kho lưu trữ từ xa mà các thay đổi có thể được đẩy lên và kéo về.

Tóm tắt

Để thực hiện các thao tác Git trên một dự án Overleaf bằng Git, bạn sẽ cần xác thực với tư cách là chủ sở hữu dự án hoặc là cộng tác viên. Bạn có thể làm điều này bằng một **mã thông báo xác thực Git**. Bạn có thể tạo và xóa các mã thông báo xác thực trong [Cài đặt Tài khoản Overleaf](https://www.overleaf.com/user/settings).

* Nếu được nhắc nhập tên người dùng, hãy nhập tên người dùng “git”
* Khi được nhắc nhập mật khẩu, hãy nhập mã thông báo xác thực của bạn
* Có thể dùng cùng một mã thông báo xác thực để truy cập tất cả dự án của bạn bằng Git
* Các token bạn tạo ra chỉ nên do riêng bạn sử dụng và được lưu trữ an toàn

Khi thực hiện các thao tác Git, hãy dùng tên người dùng **git** và dùng mã thông báo xác thực làm mật khẩu. Có thể dùng cùng một mã thông báo xác thực để truy cập tất cả các dự án của bạn bằng Git. Các token bạn tạo ra chỉ nên do riêng bạn sử dụng và được lưu trữ an toàn. Bạn có thể tạo và xóa các mã thông báo xác thực trong tài khoản Overleaf của bạn [Cài đặt tài khoản](https://www.overleaf.com/user/settings) trang

### Từng bước: Cách sao chép một dự án bằng mã thông báo xác thực Git của Overleaf

**Các bước sau giải thích cách sao chép dự án Overleaf của bạn khi sử dụng dòng lệnh Git.**

Nếu bạn đang sử dụng một Git client khác, bạn có thể dùng phương pháp phù hợp với client đó để cung cấp URL Git của dự án, "git" làm tên người dùng, và mã thông báo xác thực Git làm mật khẩu. Xem [Hiểu về URL Git](#understanding-the-git-url) để giải thích các thành phần của URL Git.

1. Chọn **Git** từ [Menu](/latex/vi/co-so-tri-thuc/148-using-the-overleaf-project-menu.md) trong dự án của bạn.

![Menu dự án git.png](/files/13f36ced38043be2136a712465fec316ecf27bc4)

1. Sao chép lệnh git clone và URL hiển thị trong hộp thoại. Bạn sẽ dùng chúng khi tạo kho lưu trữ cục bộ của mình.
2. Dán lệnh và URL vào dấu nhắc lệnh. Lưu ý rằng "git" được cung cấp làm tên người dùng trong lệnh được cung cấp.
3. Lấy mã thông báo xác thực Git của bạn
   * Nếu trước đây bạn chưa tạo mã thông báo xác thực Git, bạn sẽ có tùy chọn tạo một mã ngay bây giờ. Để làm vậy, hãy nhấp vào **Tạo mã thông báo**.
   * Nếu bạn đã tạo mã thông báo xác thực Git, bạn có thể dùng cùng mã đó hoặc tạo mã mới trong tài khoản Overleaf của bạn [Cài đặt tài khoản](https://www.overleaf.com/user/settings). **Mẹo hay**: Bạn có thể [thiết lập trình hỗ trợ thông tin xác thực Git](#how-to-save-your-token-using-git-credential-helpers) để bạn không cần cung cấp mã thông báo mỗi lần.
4. Khi được nhắc nhập mật khẩu, hãy nhập mã thông báo xác thực của bạn.

### Từng bước: Cách cập nhật URL từ xa Git từ định dạng dựa trên mật khẩu sang mã thông báo xác thực

**Các bước sau giải thích cách cập nhật URL từ xa Git từ định dạng dựa trên mật khẩu trước đây sang định dạng mới dựa trên mã thông báo xác thực.**

1\. Mở terminal của bạn và điều hướng đến thư mục dự án của bạn:

```
cd path/to/your/project
```

2\. Kiểm tra URL từ xa hiện tại của bạn:

```
git remote -v
```

Điều này sẽ hiển thị URL hiện tại của (các) remote của bạn.

3\. Cập nhật URL từ xa bằng lệnh sau:

```
git remote set-url origin https://git@git.overleaf.com/<YOUR_PROJECT_ID>
```

Thay nó bằng ID dự án của bạn

4\. Xác minh rằng thay đổi đã thành công bằng cách chạy lại lệnh remote:

```
git remote -v
```

Bây giờ bạn sẽ thấy URL mới được liệt kê.

Trong lần pull hoặc push tiếp theo từ kho lưu trữ cục bộ này, bạn sẽ cần cung cấp mã thông báo xác thực làm mật khẩu. Nếu bạn chưa tạo mã thông báo xác thực, bạn có thể làm việc đó từ Cài đặt tài khoản. Khi dùng auth tokens, nếu được nhắc nhập tên người dùng, hãy dùng "git" và dùng mã thông báo xác thực làm mật khẩu - bạn có thể tránh phải cung cấp các thông tin xác thực này cho mỗi thao tác bằng cách dùng trình hỗ trợ thông tin xác thực (xem ghi chú bên dưới).

### Thêm trợ giúp về mã thông báo xác thực

#### Hiểu về mã thông báo xác thực Git của Overleaf

* Giống như mật khẩu, một mã thông báo xác thực Git có thể được cung cấp cho một thao tác Git để xác nhận danh tính của bạn. Cũng như bạn sẽ không chia sẻ mật khẩu, bạn không bao giờ nên chia sẻ mã thông báo xác thực của mình.
* Các mã thông báo xác thực bạn tạo có thể được dùng trên tất cả các dự án mà bạn đang truy cập bằng tích hợp Git.
* Mã thông báo sẽ hết hạn sau một năm.
* **Bạn có thể có tối đa 10 mã thông báo.** Nếu bạn đạt giới hạn 10 mã thông báo, bạn nên xóa các mã thông báo cũ không dùng hoặc đã hết hạn để tạo mã thông báo mới.
* Chúng tôi khuyến nghị dùng trình hỗ trợ thông tin xác thực Git để lưu mã thông báo xác thực của bạn, để bạn không phải nhập nó mỗi lần dùng tích hợp Git. Có thêm thông tin bên dưới về cách thiết lập.

#### Cách tạo mã thông báo xác thực

* Bạn có thể xem lại và tạo mã thông báo xác thực Git trong [Cài đặt tài khoản](https://www.overleaf.com/user/settings). Bạn có thể tạo tối đa 10 mã thông báo.
* Lần đầu tiên bạn dùng tích hợp Git, bạn cũng sẽ có tùy chọn tạo mã thông báo trực tiếp từ một dự án khi bạn chọn **Git** trong dự án **Menu**.

#### Cách lưu mã thông báo của bạn bằng trình hỗ trợ thông tin xác thực Git

Chúng tôi khuyến nghị dùng một trình hỗ trợ thông tin xác thực Git. Điều này sẽ cho phép client Git của bạn ghi nhớ mã thông báo của bạn.

Nếu bạn đang sử dụng client dòng lệnh Git, bạn có thể chạy lệnh này để lưu thông tin xác thực của mình:

```
$ git config --global credential.helper store
```

Có thêm thông tin về điều này trên [trang tài liệu Git](https://git-scm.com/book/en/v2/Git-Tools-Credential-Storage).

#### Xem các mã thông báo đã tạo trước đó

Bạn có thể tìm danh sách các mã thông báo xác thực Git của mình trong Cài đặt tài khoản. Tuy nhiên, bạn sẽ không thể xem toàn bộ mã thông báo. Nếu bạn không nhớ mã thông báo của mình, và chưa bật trình hỗ trợ thông tin xác thực Git, bạn sẽ cần tạo mã mới. Bạn có thể làm điều đó trong Cài đặt tài khoản.

#### Xóa một mã thông báo đã tạo

Khi một mã thông báo bị xóa, nó sẽ không còn có thể được dùng để xác thực danh tính của bạn khi thực hiện các thao tác Git. Nếu bạn thử thực hiện một thao tác với mã thông báo đã hết hạn hoặc đã bị xóa, rất có thể bạn sẽ thấy lỗi xác thực do client Git của bạn báo cáo.

#### Cách làm việc với cộng tác viên

Nếu bạn đang dùng tích hợp Git của Overleaf để cộng tác với người vốn không thường dùng Overleaf, bạn nên chia sẻ dự án với họ và họ có thể tạo một tài khoản Overleaf. Sau khi làm điều này, họ có thể lấy URL Git của dự án và tạo mã thông báo riêng của họ để truy cập dự án.

**Bạn không bao giờ nên chia sẻ mã thông báo. Hãy xử lý nó an toàn như tên người dùng và mật khẩu. Nếu bạn thấy rằng mình vô tình đã chia sẻ mã thông báo, bạn nên xóa nó.**

### Hiểu về URL Git

Tính năng `git clone` và URL Git có thể được lấy bằng cách chọn **Git** trong dự án **Menu**. Hoặc, bạn có thể tìm URL Git từ URL dự án (URL trong thanh địa chỉ trình duyệt khi bạn đang ở trong một dự án).

#### Overleaf Cloud

Nếu URL dự án Overleaf của bạn trông như sau:

```
https://www.overleaf.com/project/1234567
```

Thì URL Git dùng để sao chép dự án sẽ là:

```
https://git.overleaf.com/1234567
```

Tên người dùng của bạn sẽ là **git** và mật khẩu sẽ là mã thông báo bạn lấy từ tài khoản Overleaf của mình.

Lệnh và URL được cung cấp trong hộp thoại Git trong menu dự án bao gồm: (1) lệnh git clone dùng ở dòng lệnh Git và (2) URL Git đầy đủ bao gồm id dự án được thêm trước bằng tên người dùng "git".

![Mô tả trực quan về lệnh git clone và chuỗi URL](/files/8df15dc4e2491ba9e69719c44b3c712fe03f8bc2)

#### Overleaf Server Pro

Nếu URL dự án Overleaf của bạn trông như sau:

```
 https://<SHARELATEX_SITE_URL>/project/1234567
```

Lưu ý: \<SHARELATEX\_SITE\_URL> là giá trị host do quản trị viên Overleaf Server Pro của bạn đặt.

Thì URL Git dùng để sao chép dự án sẽ là:

```
https://<SHARELATEX_SITE_URL>/git/1234567
```

Tên người dùng của bạn sẽ là **git** và mật khẩu sẽ là mã thông báo bạn lấy từ tài khoản Overleaf của mình.

Lệnh và URL được cung cấp trong hộp thoại Git trong menu dự án bao gồm: (1) lệnh git clone được dùng ở dòng lệnh Git và (2) URL Git đầy đủ bao gồm tên người dùng "git", máy chủ Overleaf cụ thể của bạn, và một đường dẫn bao gồm id dự án.

![Mô tả trực quan về lệnh git clone và chuỗi URL](/files/f9f368bcc5a24fa012ce8110e53e3282c0b29502)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/latex/vi/co-so-tri-thuc/042-git-integration-authentication-tokens.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
