> 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/pl/baza-wiedzy/044-github-synchronization.md).

# Synchronizacja z GitHubem

**Synchronizacja z GitHub** jest [funkcją premium](/latex/pl/baza-wiedzy/120-overleaf-premium-features.md). Funkcje premium Overleaf są dostępne dla uczestników w [Overleaf Commons](https://www.overleaf.com/for/universities), członków grupy [subskrypcji](https://www.overleaf.com/for/groups), oraz właścicieli indywidualnych [subskrypcji](https://www.overleaf.com/user/subscription/plans).

Podsumowanie

Funkcja synchronizacji z GitHub pozwala połączyć projekty Overleaf bezpośrednio z repozytorium GitHub, które działa jako repozytorium zdalne dla Twojego projektu Overleaf, i umożliwia wypychanie oraz pobieranie zmian między nimi. Synchronizacja z GitHub może być używana tylko na [Github.com](https://www.github.com) i nie może być używana do łączenia z innymi instalacjami GitHub Enterprise.

Możesz synchronizować projekt Overleaf z repozytorium GitHub albo tworząc nowy projekt Overleaf z istniejącego repozytorium GitHub, albo tworząc nowe repozytorium GitHub z istniejącego projektu Overleaf. Nie jest możliwe zsynchronizowanie istniejącego projektu Overleaf z istniejącym repozytorium Github.

* Synchronizacja z GitHub jest włączana przez połączenie konta GitHub z kontem Overleaf
* Nowe projekty można tworzyć z istniejących repozytoriów GitHub
* Repozytoria można tworzyć w GitHub na podstawie istniejących projektów Overleaf
* Połączone projekty i repozytoria są utrzymywane w synchronizacji za pomocą **GitHub** opcji w **Menu**

### Łączenie konta Overleaf z kontem GitHub

Aby korzystać z funkcji synchronizacji z GitHub, musisz połączyć konto Overleaf z kontem Github. Możesz to zrobić w swoim [Ustawień konta](https://www.overleaf.com/user/settings). Pamiętaj, że możliwość łączenia przez Overleaf z określonymi repozytoriami lub organizacjami powiązanymi z Twoim kontem może zależeć od ustawień uprawnień skonfigurowanych w GitHub.

### Tworzenie nowego projektu Overleaf z repozytorium GitHub

W menu Nowy projekt możesz wybrać opcję GitHub. Zostanie wyświetlona lista repozytoriów widocznych dla Overleaf za pośrednictwem Twojego konta GitHub, na podstawie ustawień uprawnień GitHub.

![Create new github.png](/files/82cdc5a46208c5e98fd7f28619c5ae8c881ddbcd)

Kilka rzeczy, o których warto pamiętać podczas tworzenia nowego projektu Overleaf z istniejącego repozytorium GitHub.

* W przypadku projektów Overleaf obowiązują ograniczenia rozmiaru, które mogą uniemożliwić użycie większych repozytoriów GitHub do utworzenia projektu. Zobacz [tę stronę](/latex/pl/baza-wiedzy/119-overleaf-plan-limits.md) aby zapoznać się z przeglądem ograniczeń dotyczących rozmiaru i liczby plików w projekcie Overleaf.
* Projekty Overleaf nie obsługują podmodułów Git ani Git LFS.

### Tworzenie nowego repozytorium GitHub z projektu Overleaf

W menu projektu Overleaf możesz wybrać GitHub jako jedną z opcji synchronizacji. Spowoduje to wyświetlenie okna dialogowego, w którym możesz podać nazwę nowego repozytorium GitHub do synchronizacji z projektem Overleaf.

![Menu projektu github.png](/files/ca0f088bd511ed9d543e380cb4399f146fac0b2d)

### Synchronizacja z GitHub

Synchronizacja między GitHub a Overleaf nie odbywa się automatycznie; opcje synchronizacji są wyświetlane po kliknięciu **GitHub** opcji w **Menu**. W tym momencie okno modalne GitHub poinformuje, czy są nowe zmiany do pobrania z GitHub. Zawsze będzie dostępna opcja wypchnięcia zmian do GitHub (uwaga: ta opcja będzie wyświetlana nawet wtedy, gdy Overleaf i GitHub są aktualne).

![obraz okna modalnego GitHub](/files/bf321c170b0dc70e6679d5347aaed08e87d5882a)

Commity do GitHub są tworzone po kliknięciu przycisku Wypchnij zmiany Overleaf do GitHub. W tym momencie można opcjonalnie podać wiadomość commita.

* Zmiany w historii Overleaf pochodzące z GitHub będą wyświetlane jako utworzone przez anonimowego autora.
* Zmiany w historii GitHub pochodzące z Overleaf będą wyświetlane jako utworzone przez właściciela połączonego konta GitHub.

### Rozwiązywanie konfliktów scalania

Może się zdarzyć, że gdy zmiany zostaną wprowadzone zarówno w Overleaf, jak i w Github, Git nie będzie w stanie samodzielnie scalić ich automatycznie. Na przykład jeśli Twój współpracownik zmienił wiersz w Overleaf, a Ty zmieniłeś ten sam wiersz w repozytorium Github, Overleaf może nie być w stanie wybrać, którą wersję zachować.

W takiej sytuacji zamiast scalać do głównej gałęzi wypychamy do repozytorium nową gałąź. Ta gałąź będzie miała opisową nazwę (zawierającą datę i godzinę utworzenia gałęzi) i będzie zawierać wersję dokumentu z Overleaf. Podczas próby synchronizacji z GitHub wyświetlony zostanie komunikat informujący, że trzeba rozwiązać konflikt scalania.

![Okno konfliktu scalania GitHub](/files/ac57038d5dd266395527b33abaa7bdf64febb370)

Aby ponownie uzyskać synchronizację, musisz scalić gałąź Overleaf z główną (domyślną) gałęzią. Możesz to zrobić na swoim komputerze, pobierając obie gałęzie i scalając je za pomocą gita lub innego narzędzia, a następnie wypychając wynik z powrotem do Github. Alternatywnie możesz wykonać scalanie bezpośrednio w Github, tworząc pull request z gałęzi Overleaf i korzystając z ich funkcji rozwiązywania konfliktów. Obie metody są opisane w [dokumentacji Github](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/addressing-merge-conflicts).

### Uzyskiwanie dostępu do repozytoriów w organizacjach GitHub

Możesz synchronizować projekty Overleaf z repozytoriami powiązanymi z Twoim połączonym kontem GitHub, a także synchronizować z projektami w organizacjach GitHub, których jesteś członkiem. Aby synchronizować z repozytoriami w powiązanych organizacjach GitHub, organizacje te muszą udzielić zgody na dostęp dla aplikacji OAuth Overleaf.

* Jeśli jesteś członkiem organizacji, możesz postępować zgodnie z krokami opisanymi [tutaj](https://help.github.com/articles/requesting-organization-approval-for-oauth-apps/) aby poprosić o dostęp dla aplikacji Overleaf do Twojej organizacji.
* Jeśli jesteś właścicielem organizacji, możesz postępować zgodnie z krokami opisanymi [tutaj](https://help.github.com/articles/approving-oauth-apps-for-your-organization/) aby zatwierdzić aplikację Overleaf dla organizacji.

### Limity plików synchronizacji z GitHub

Projekty Overleaf podlegają indywidualnym ograniczeniom rozmiaru, a także limitom całkowitej liczby plików w projekcie, jak zauważono [tutaj](/latex/pl/baza-wiedzy/119-overleaf-plan-limits.md). Chociaż sam Git może obsłużyć pojedynczy commit zmieniający tysiące plików, API GitHub używane przez funkcję synchronizacji z GitHub w Overleaf nakłada również limity na liczbę plików, które można wypchnąć lub pobrać. Zaleca się ograniczenie liczby plików w pojedynczym commicie do mniej niż 100 plików, a całkowitego rozmiaru projektu do mniej niż 100 MB w przypadku korzystania z synchronizacji GitHub. Projekty powyżej tych rozmiarów mogą działać, ale zalecamy pozostanie w tych granicach, aby uniknąć potencjalnych problemów z synchronizacją.

### Odłączanie projektu od repozytorium

Chociaż możliwe jest utworzenie wielu projektów z jednego istniejącego repozytorium GitHub, **nie jest możliwe zmienienie repozytorium powiązanego z danym projektem**. Gdy projekt jest powiązany z repozytorium, nie można go odłączyć i użyć do utworzenia nowego repozytorium. Jeśli chcesz utworzyć nowe repozytorium z konkretnego projektu, musisz utworzyć nową kopię projektu, a następnie utworzyć nowe repozytorium z tej kopii.

### Znane ograniczenia

**Gałęzie**: System Git Overleaf nie obsługuje tworzenia gałęzi.

**Dowiązania symboliczne**: System Git Overleaf nie obsługuje dowiązań symbolicznych. Dowiązanie symboliczne może zostać wypchnięte do projektu Overleaf, ale zostanie przekonwertowane na zwykły plik i nadpisze lokalne dowiązanie symboliczne przy następnym pobraniu projektu.

**Uprawnienia plików**: System Git Overleaf nie zachowuje uprawnień do wykonywania. Podczas pracy z synchronizacją GitHub, jeśli jakiekolwiek pliki z ustawionym bitem wykonywalności w GitHub zostaną zsynchronizowane z Overleaf, Overleaf uruchomi automatyczny commit, aby zresetować uprawnienia plików.

**Git LFS**: Projekty Overleaf nie obsługują Git Large File Storage.

**Podmoduły Git**: Projekty Overleaf mogą działać jako podmoduły Git w innych repozytoriach, ale nie mogą zawierać innych podmodułów Git. Aby odwoływać się do plików z innych projektów, zaleca się użycie funkcji dodawania z innego projektu.

**Śledzone zmiany i komentarze**: Niestety pobrania z GitHub do Overleaf mogą skutkować utratą lub przesunięciem śledzenia zmian i komentarzy; dlatego nie zalecamy mieszania aktywnej pracy w GitHub z używaniem śledzenia zmian i/lub komentarzy.

**Bezpośrednia synchronizacja z GitHub Enterprise lub GitLab:** API GitHub używane przez Overleaf może łączyć się tylko z repozytoriami hostowanymi na github.com. Możesz pośrednio synchronizować z projektami hostowanymi u innych dostawców, używając [integracji Git Overleaf](/latex/pl/baza-wiedzy/040-git-integration.md) .

**Łączenie istniejącego projektu z istniejącym repozytorium**: Nie jest możliwe zsynchronizowanie istniejącego projektu Overleaf z istniejącym repozytorium Github.

**Autorstwo wypchnięć do GitHub**: Jedynym użytkownikiem GitHub, którego zna Overleaf, jest użytkownik, którego konto GitHub jest połączone z kontem Overleaf i jest właścicielem tego projektu. Wszystkie commity są wykonywane za pomocą API GitHub, które jawnie tworzy te commity przy użyciu tożsamości tego użytkownika. Dlatego wszystkie commity będą w historii Gita GitHub wyświetlane jako pochodzące od połączonego użytkownika. W historii Overleaf zmiany są wyświetlane jako „Anonymous (via GitHub)”.

**Historia Gita i historia Overleaf:** Zmiany po stronie Overleaf nie mają odwzorowania jeden do jednego na commity GitHub. Kilku użytkowników może wprowadzać zmiany po stronie Overleaf, ale po uruchomieniu synchronizacji zmiany te zostaną połączone w jeden commit przypisany do połączonego użytkownika GitHub.


---

# 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/pl/baza-wiedzy/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.
