> 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/id/basis-pengetahuan/044-github-synchronization.md).

# Sinkronisasi GitHub

**Sinkronisasi GitHub** adalah sebuah [fitur premium](/latex/id/basis-pengetahuan/120-overleaf-premium-features.md). Fitur premium Overleaf tersedia bagi peserta dalam [Overleaf Commons](https://www.overleaf.com/for/universities), anggota grup [langganan](https://www.overleaf.com/for/groups), dan pemilik akun individual [langganan](https://www.overleaf.com/user/subscription/plans).

Ringkasan

Fitur Sinkronisasi GitHub memungkinkan Anda menautkan proyek Overleaf Anda langsung ke repositori GitHub yang bertindak sebagai repositori jarak jauh untuk proyek Overleaf Anda, dan menyediakan cara untuk mendorong dan mengambil perubahan di antara keduanya. Sinkronisasi GitHub hanya dapat digunakan di [GitHub.com](https://www.github.com) dan tidak dapat digunakan untuk terhubung ke instalasi GitHub Enterprise lainnya.

Anda dapat menyinkronkan proyek Overleaf dengan repositori GitHub dengan membuat proyek Overleaf baru dari repositori GitHub yang sudah ada atau dengan membuat repositori GitHub baru dari proyek Overleaf yang sudah ada. Tidak mungkin menyinkronkan proyek Overleaf yang sudah ada dengan repositori Github yang sudah ada.

* Sinkronisasi GitHub diaktifkan dengan menautkan akun GitHub Anda ke akun Overleaf Anda
* Proyek baru dapat dibuat dari repositori GitHub yang sudah ada
* Repositori dapat dibuat di GitHub berdasarkan proyek Overleaf yang sudah ada
* Proyek dan repositori yang ditautkan tetap disinkronkan menggunakan **GitHub** opsi pada proyek **Menu**

### Menautkan akun Overleaf Anda ke akun GitHub Anda

Untuk dapat menggunakan fitur Sinkronisasi GitHub, Anda harus menautkan akun Overleaf Anda ke akun Github Anda. Anda dapat melakukan ini di [Pengaturan Akun](https://www.overleaf.com/user/settings)Overleaf Anda. Harap diperhatikan bahwa kemampuan Overleaf untuk terhubung ke repositori atau organisasi tertentu yang terkait dengan akun Anda dapat bergantung pada pengaturan izin yang telah dikonfigurasi di GitHub.

### Membuat proyek Overleaf baru dari repositori GitHub

Dari menu Proyek Baru, Anda dapat memilih opsi GitHub. Ini akan menampilkan daftar repositori yang terlihat oleh Overleaf melalui akun GitHub Anda, berdasarkan pengaturan izin GitHub Anda.

![Buat baru github.png](/files/fc62b24ae7bbf765fda22077cc890e5c1285159e)

Beberapa hal yang perlu diperhatikan saat membuat proyek Overleaf baru dari repositori GitHub yang sudah ada.

* Ada pembatasan ukuran yang diterapkan pada proyek Overleaf yang dapat mencegah repositori GitHub yang lebih besar digunakan untuk membuat proyek. Silakan lihat [halaman ini](/latex/id/basis-pengetahuan/119-overleaf-plan-limits.md) untuk gambaran umum tentang batasan yang diterapkan pada ukuran dan jumlah berkas dalam proyek Overleaf.
* Proyek Overleaf tidak mendukung Git submodule atau Git LFS.

### Membuat repositori GitHub baru dari proyek Overleaf

Dari menu Proyek Overleaf, Anda dapat memilih GitHub sebagai salah satu opsi Sinkronisasi. Ini akan menampilkan dialog tempat Anda dapat memberikan nama repositori GitHub baru untuk disinkronkan dengan proyek Overleaf Anda.

![Menu proyek github.png](/files/e9bdaeb024efdedd894646b6f94bd0d4fb1c8714)

### Menyinkronkan dengan GitHub

Sinkronisasi antara GitHub dan Overleaf tidak terjadi secara otomatis, opsi sinkronisasi ditampilkan dengan mengklik **GitHub** opsi pada proyek **Menu**. Pada saat itu modal GitHub akan melaporkan jika ada perubahan baru untuk diambil dari GitHub. Anda akan selalu diberikan opsi untuk mendorong perubahan ke GitHub (catatan: opsi ini akan ditampilkan bahkan jika Overleaf dan GitHub sudah mutakhir).

![gambar modal GitHub](/files/823202b43f59c1ac6403c161d122e66befff92c0)

Commit ke GitHub dibuat saat tombol Push perubahan Overleaf ke GitHub diklik. Pada saat itu, pesan commit opsional dapat diberikan.

* Perubahan dalam riwayat Overleaf yang berasal dari GitHub akan ditampilkan sebagai dibuat oleh anonim.
* Perubahan dalam riwayat GitHub yang berasal dari Overleaf akan ditampilkan sebagai dibuat oleh pemilik akun GitHub yang terhubung.

### Menyelesaikan konflik merge

Dapat terjadi bahwa ketika perubahan dibuat baik di Overleaf maupun di Github, Git tidak dapat menentukan cara untuk menggabungkannya secara otomatis. Misalnya, jika kolaborator Anda mengubah satu baris di Overleaf dan Anda mengubah baris yang sama di repositori Github, Overleaf mungkin tidak dapat memilih versi mana yang harus dipertahankan.

Ketika itu terjadi, alih-alih menggabungkannya ke branch utama Anda, kami mendorong branch baru ke repositori Anda. Branch ini akan memiliki nama yang deskriptif (termasuk tanggal dan waktu pembuatan branch), dan berisi versi dokumen di Overleaf. Ketika Anda mencoba menyinkronkan dengan GitHub, sebuah pesan akan ditampilkan yang menyatakan bahwa konflik merge perlu diselesaikan.

![Dialog konflik merge GitHub](/files/f3d2bdf92cf216b60acf7a4f369464b43f349a10)

Untuk kembali sinkron, Anda perlu menggabungkan branch Overleaf ke branch utama (default) Anda. Anda dapat melakukannya di komputer Anda dengan mengambil kedua branch dan menggabungkannya dengan git atau alat lainnya, lalu mendorong hasilnya kembali ke Github. Atau, Anda dapat melakukan merge langsung di Github dengan membuat pull request dari branch Overleaf dan menggunakan fitur penyelesaian konfliknya. Kedua pendekatan dijelaskan dalam [dokumentasi GitHub](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/addressing-merge-conflicts).

### Mengakses repositori di organisasi GitHub Anda

Anda dapat menyinkronkan proyek Overleaf dengan repositori yang terkait dengan akun GitHub Anda yang terhubung, dan juga dapat menyinkronkan dengan proyek di organisasi GitHub tempat Anda menjadi anggota. Agar dapat menyinkronkan dengan repositori di organisasi GitHub Anda yang terkait, organisasi tersebut harus memberikan izin agar dapat diakses oleh aplikasi OAuth Overleaf.

* Jika Anda adalah anggota organisasi, Anda dapat mengikuti langkah-langkah yang dijelaskan [di sini](https://help.github.com/articles/requesting-organization-approval-for-oauth-apps/) untuk meminta akses bagi aplikasi Overleaf agar dapat mengakses organisasi Anda.
* Jika Anda adalah pemilik organisasi, Anda dapat mengikuti langkah-langkah yang dijelaskan [di sini](https://help.github.com/articles/approving-oauth-apps-for-your-organization/) untuk menyetujui aplikasi Overleaf bagi organisasi tersebut.

### Batas file Sinkronisasi GitHub

Proyek Overleaf tunduk pada batasan ukuran individual, serta batasan jumlah total berkas dalam sebuah proyek seperti yang disebutkan [di sini](/latex/id/basis-pengetahuan/119-overleaf-plan-limits.md). Meskipun Git sendiri dapat menangani satu commit yang mengubah ribuan berkas, API GitHub yang digunakan oleh fitur sinkronisasi GitHub Overleaf juga memberlakukan batasan pada jumlah berkas yang dapat di-push atau di-pull. Disarankan untuk membatasi jumlah berkas dalam satu commit individu di bawah 100 berkas, dan ukuran keseluruhan proyek kurang dari 100 MB jika menggunakan sinkronisasi GitHub. Proyek di atas ukuran ini mungkin dapat bekerja, tetapi kami menyarankan untuk tetap berada dalam batas-batas ini agar terhindar dari potensi masalah sinkronisasi.

### Memutuskan tautan proyek dari repositori

Meskipun dimungkinkan untuk membuat beberapa proyek dari satu repositori GitHub yang sudah ada, **tidak mungkin mengubah repositori yang terkait dengan proyek tertentu**. Setelah sebuah proyek ditautkan ke repositori, proyek tersebut tidak dapat diputus tautannya dan digunakan untuk membuat repositori baru. Jika Anda perlu membuat repositori baru dari proyek tertentu, Anda harus membuat salinan baru dari proyek tersebut, lalu membuat repositori baru dari salinan itu.

### Batasan yang Diketahui

**Cabang**: Sistem Git Overleaf tidak mendukung pembuatan cabang.

**Symlink**: Sistem Git Overleaf tidak menangani symlink. Sebuah symlink dapat di-push ke proyek Overleaf, tetapi akan diubah menjadi berkas biasa, dan akan menimpa symlink lokal saat proyek berikutnya di-pull.

**Izin Berkas**: Sistem Git Overleaf tidak mempertahankan izin eksekusi. Saat bekerja dengan sinkronisasi GitHub, jika ada berkas dengan bit eksekusi di GitHub yang disinkronkan ke Overleaf, commit otomatis akan dipicu oleh Overleaf untuk mengatur ulang izin berkas.

**Git LFS**: Proyek Overleaf tidak mendukung Git Large File Storage.

**Git Submodule**: Proyek Overleaf dapat bertindak sebagai submodule Git di dalam repositori lain, tetapi tidak dapat berisi submodule Git lainnya. Untuk mereferensikan berkas dari proyek lain, disarankan untuk menggunakan fitur tambahkan dari proyek lain.

**Perubahan Terlacak dan Komentar**: Sayangnya, pull dari GitHub ke Overleaf dapat mengakibatkan hilangnya atau bergesernya pelacakan perubahan dan komentar; oleh karena itu, kami tidak merekomendasikan mencampur pekerjaan aktif di GitHub dengan penggunaan pelacakan perubahan dan/atau komentar.

**Sinkronisasi Langsung dengan GitHub Enterprise atau GitLab:** API GitHub yang digunakan oleh Overleaf hanya dapat terhubung ke repositori yang di-host di github.com. Anda dapat menyinkronkan secara tidak langsung dengan proyek yang di-host oleh penyedia lain menggunakan [integrasi Git Overleaf](/latex/id/basis-pengetahuan/040-git-integration.md) fitur.

**Menghubungkan proyek yang sudah ada ke repositori yang sudah ada**: Tidak mungkin menyinkronkan proyek Overleaf yang sudah ada dengan repositori Github yang sudah ada.

**Kepengarangan push ke GitHub**: Satu-satunya pengguna Github yang diketahui oleh Overleaf adalah pengguna yang akun GitHub-nya ditautkan ke akun Overleaf dan memiliki proyek tersebut. Semua commit dibuat menggunakan API GitHub yang secara eksplisit membuat commit tersebut menggunakan identitas pengguna itu. Jadi semua commit akan tampil dalam riwayat GitHub sebagai berasal dari pengguna yang ditautkan. Dalam riwayat Overleaf, perubahan ditampilkan sebagai "Anonim (via GitHub)".

**Riwayat Git dan riwayat Overleaf:** Perubahan di sisi Overleaf tidak memiliki pemetaan satu-ke-satu dengan commit GitHub. Beberapa pengguna dapat membuat perubahan di sisi Overleaf, tetapi perubahan ini akan digabungkan sebagai satu commit di bawah pengguna GitHub yang terhubung saat sinkronisasi dipicu.


---

# 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/id/basis-pengetahuan/044-github-synchronization.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.
