diff --git a/other-sheets/git-cheat-sheet-pl.md b/other-sheets/git-cheat-sheet-pl.md
new file mode 100644
index 0000000..898f59e
--- /dev/null
+++ b/other-sheets/git-cheat-sheet-pl.md
@@ -0,0 +1,734 @@
+
+
+Git Cheat Sheet Polish
+===============
+### Indeks
+* [Konfiguracja](#konfiguracja)
+* [Pliki Konfiguracyjne](#pliki-konfiguracyjne)
+* [Tworzenie](#tworzenie)
+* [Zmiany Lokalne](#zmiany-lokalne)
+* [Wyszukiwanie](#wyszukiwanie)
+* [Historia Commitów](#historia-commitów)
+* [Gałęzie & Tagi](#gałęzie--tagi)
+* [Uaktualnij & Opublikuj](#uaktualnij--opublikuj)
+* [Połącz & Rebase](#połącz--rebase)
+* [Cofnij](#cofnij)
+* [Git Flow](#git-flow)
+
+
+
+
+## Konfiguracja
+
+##### Wyświetl aktualną konfigurację:
+```
+$ git config --list
+```
+##### Wyświetl konfigurację repozytorium:
+```
+$ git config --local --list
+```
+
+##### Wyświetl konfigurację globalną:
+```
+$ git config --global --list
+```
+
+##### Wyświetl konfigurację systemową:
+```
+$ git config --system --list
+```
+
+##### Ustaw nazwę do rozpoznawania autorstwa, podczas przeglądu historii wersji:
+```
+$ git config --global user.name “[imię nazwisko]”
+```
+
+##### Ustaw adres email, który będzie przypisany do każdego znacznika historii:
+```
+$ git config --global user.email “[poprawny-email]”
+```
+
+##### Ustaw automatyczne kolorowanie wiersza poleceń Git, aby ułatwić przegląd:
+```
+$ git config --global color.ui auto
+```
+
+##### Ustaw edytor globalny dla commitów:
+```
+$ git config --global core.editor vi
+```
+
+
+
+## Pliki Konfiguracyjne
+
+##### Plik konfiguracyjny dla określonego repozytorium [--local]:
+```
+/.git/config
+```
+
+##### Własny plik konfiguracyjny [--global]:
+```
+~/.gitconfig
+```
+
+##### Globalny plik konfiguracyjny [--system]:
+```
+/etc/gitconfig
+```
+
+
+
+## Tworzenie
+
+##### Sklonuj istniejące repozytorium:
+
+Istnieją dwa sposoby:
+
+Przez SSH
+
+```
+$ git clone ssh://nazwa@domena.com/repo.git
+```
+
+Przez HTTP
+
+```
+$ git clone http://domena.com/nazwa/repo.git
+```
+
+##### Utwórz nowe repozytorium lokalne w bieżącej lokalizacji:
+```
+$ git init
+```
+
+##### Utwórz nowe repozytorium lokalne w konkretnej lokalizacji:
+```
+$ git init <ścieżka>
+```
+
+
+
+## Zmiany Lokalne
+
+##### Zmiany w katalogu roboczym:
+```
+$ git status
+```
+
+##### Zmiany w śledzonych plikach:
+```
+$ git diff
+```
+
+##### Zobacz zmiany/różnice w danym pliku:
+```
+$ git diff
+```
+
+##### Dodaj wszystkie bieżące zmiany do następnego commitu:
+```
+$ git add .
+```
+
+##### Dodaj kilka zmian w <plik> do następnego commitu:
+```
+$ git add -p
+```
+
+##### Dodaj tylko wymienione pliki do następnego commitu:
+```
+$ git add
+```
+
+##### Wykonaj commit z wszystkimi zmianami w śledzonych plikach:
+```
+$ git commit -a
+```
+
+##### Wykonaj commit wcześniej dodanych plików:
+```
+$ git commit
+```
+
+##### Wykonaj commit z wiadomością:
+```
+$ git commit -m 'twoja wiadomość'
+```
+
+##### Wykonaj commit omijając staging area i dodaj wiadomość:
+```
+$ git commit -am 'twoja wiadomość'
+```
+
+##### Wykonaj commit z wcześniejszą datą:
+```
+$ git commit --date="`date --date='n dzień temu'`" -am ""
+```
+
+##### Zmodyfikuj ostatni commit:
+Nie modyfikuj opublikowanych commitów!
+
+```
+$ git commit -a --amend
+```
+
+##### Zmodyfikuj ostatni commit, ale pozostaw poprzednią wiadomość:
+Nie modyfikuj opublikowanych commitów!
+
+```shell
+$ git commit --amend --no-edit
+```
+
+##### Zmień czas commitera ostatniego commitu:
+```
+GIT_COMMITTER_DATE="date" git commit --amend
+```
+
+##### Zmień czas autora ostatniego commitu:
+```shell
+$ git commit --amend --date="date"
+```
+
+##### Przenieś niecommitowane zmiany z bieżącej gałęzi do innej gałęzi:
+```
+$ git stash
+$ git checkout gałąź2
+$ git stash pop
+```
+
+##### Przywróć przechowywane zmiany z powrotem do bieżącej gałęzi:
+```shell
+$ git stash apply
+```
+
+#### Przywróć dany stash z powrotem do bieżącej gałęzi:
+- *{numer_stashu}* można uzyskać poprzez `git stash list`
+
+```shell
+$ git stash apply stash@{numer_stashu}
+```
+
+##### Usuń ostatni zestaw przechowywanych zmian:
+```
+$ git stash drop
+```
+
+
+
+## Wyszukiwanie
+
+##### Wyszukiwanie tekstu we wszystkich plikach w katalogu:
+```
+$ git grep "Cześć"
+```
+
+##### W dowolnej wersji wyszukiwania tekstu:
+```
+$ git grep "Cześć" v2.5
+```
+
+##### Wyświetl commity, które wprowadziły określone słowo kluczowe:
+```
+$ git log -S 'słowo kluczowe'
+```
+
+##### Wyświetl commity, które wprowadziły określone słowo kluczowe (używając wyrażenia regularnego):
+```
+$ git log -S 'słowo kluczowe' --pickaxe-regex
+```
+
+
+
+## Historia Commitów
+
+##### Wyświetl wszystkie commity, zaczynając od najnowszego (wyświetli hash, informacje o autorze, datę commitu i tytuł commitu):
+```
+$ git log
+```
+
+##### Wyświetl wszystkie commity (wyświetli tylko hash commitu i wiadomość commitu):
+```
+$ git log --oneline
+```
+
+##### Wyświetl wszystkie commity określonego użytkownika:
+```
+$ git log --author="użytkownik"
+```
+
+##### Wyświetl zmiany w czasie dla określonego pliku:
+```
+$ git log -p
+```
+
+##### Wyświetl commity które są tylko w remote/branch po prawej stronie:
+```
+$ git log --oneline .. --left-right
+```
+
+##### Kto zmienił, co i kiedy w <plik>:
+```
+$ git blame
+```
+
+##### Wyświetl dziennik referencji:
+```
+$ git reflog show
+```
+
+##### Usuń dziennik referencji:
+```
+$ git reflog delete
+```
+
+
+## Przenieś / Zmień nazwę
+
+##### Zmień nazwę pliku:
+
+Zmień nazwę z Index.txt na Index.html
+
+```
+$ git mv Index.txt Index.html
+```
+
+
+
+## Gałęzie & Tagi
+
+##### Wymień wszystkie lokalne gałęzie:
+```
+$ git branch
+```
+
+#### Wymień lokalne/zdalne gałęzie:
+```
+$ git branch -a
+```
+
+##### Wymień wszystkie zdalne gałęzie:
+```
+$ git branch -r
+```
+
+##### Zmień gałąź HEAD:
+```
+$ git checkout
+```
+
+##### Przełącz pojedynczy plik z innej gałęzi:
+```
+$ git checkout --
+```
+
+##### Utwórz i zmień na nową gałąź:
+```
+$ git checkout -b
+```
+
+##### Zmień na poprzednią gałąź, bez podawania konkretnej nazwy:
+```
+$ git checkout -
+```
+
+##### Utwórz nową gałąź z istniejącej już gałęzi i przełącz na nową gałąź:
+```
+$ git checkout -b
+```
+
+
+#### Przełącz i utwórz nową galąź z istniejącego commitu:
+```
+$ git checkout -b
+```
+
+
+##### Utwórz nową gałąź na podstawie aktualnej gałęzi HEAD:
+```
+$ git branch
+```
+
+##### Utwórz nową gałąź śledzącą na podstawie gałęzi zdalnej:
+```
+$ git branch --track
+```
+
+##### Usuń gałąź lokalną:
+```
+$ git branch -d
+```
+
+##### Zmień nazwę obecnej gałęzi:
+```shell
+$ git branch -m
+```
+
+##### Wymuś usunięcie gałęzi lokalnej:
+Utracisz niepołączone zmiany!
+
+```
+$ git branch -D
+```
+
+##### Oznacz `HEAD` tagiem:
+```
+$ git tag
+```
+
+##### Oznacz `HEAD` tagiem i otwórz edytor, aby napisać wiadomość:
+```
+$ git tag -a
+```
+
+##### Oznacz `HEAD` tagiem z wiadomością:
+```
+$ git tag -am 'twoja wiadomość'
+```
+
+##### Wyświetl wszystkie tagi:
+```
+$ git tag
+```
+
+##### Wyświetl wszystkie tagi wraz z ich wiadomościami (wiadomość tagu lub wiadomość commitu jeśli tag nie ma wiadomości):
+```
+$ git tag -n
+```
+
+
+
+## Uaktualnij & Opublikuj
+
+##### Wyświetl wszystkie obecnie skonfigurowane repozytoria zdalne:
+```
+$ git remote -v
+```
+
+##### Wyświetl informacje o repozytorium:
+```
+$ git remote show
+```
+
+##### Dodaj nowe zdalne repozytorium o nazwie <repozytorium>:
+```
+$ git remote add
+```
+
+##### Zmień nazwę zdalnego repozytoriumy, z <repozytorium> na <nowe_repozytorium>:
+```
+$ git remote rename
+```
+
+##### Usuń repozytorium:
+```
+$ git remote rm
+```
+
+Uwaga: git remote rm nie usuwa zdalnego repozytorium z serwera. Po prostu usuwa zdalne repozytorium i jego referencje z lokalnego repozytorium.
+
+##### Pobierz wszystkie zmiany z <repozytorium>, ale nie integruj ich z HEAD:
+```
+$ git fetch
+```
+
+##### Pobierz zmian i bezpośrednio połącz/zintegruj z HEAD:
+```
+$ git remote pull
+```
+
+##### Pobierz wszystkie zmiany z HEAD do lokalnego repozytorium:
+```
+$ git pull origin master
+```
+
+##### Pobierz wszystkie zmiany z HEAD do lokalnego repozytorium bez łączenia ich:
+```
+$ git pull --rebase
+```
+
+##### Opublikuj lokalne zmiany w repozytorium zdalnym:
+```
+$ git push remote
+```
+
+##### Usuń gałąź w repozytorium zdalnym:
+```
+$ git push : (od Git v1.5.0)
+```
+lub
+```
+$ git push --delete (od Git v1.7.0)
+```
+
+##### Opublikuj swoje tagi:
+```
+$ git push --tags
+```
+
+
+#### Ustaw globalne narzędzie do scalania jako Meld (edytor):
+```bash
+$ git config --global merge.tool meld
+```
+
+##### Uzyj narzędzia Meld, aby rozwiązywać konflikty:
+```
+$ git mergetool
+```
+
+## Połącz & Rebase
+
+##### Połącz gałąź z aktualnym HEAD:
+```
+$ git merge
+```
+
+#### Wyświetl połączone gałęzie:
+```
+$ git branch --merged
+```
+
+##### Zrebase'uj obecny HEAD w <gałąź>:
+Nie rebase'uj opublikowanych commitów!
+
+```
+$ git rebase
+```
+
+##### Przerwij rebase:
+```
+$ git rebase --abort
+```
+
+##### Kontynuuj rebase po rozwiązaniu konfliktów:
+```
+$ git rebase --continue
+```
+
+##### Użyj swojego edytora do ręcznego rozwiązywania konfliktów i (po rozwiązaniu) oznacz plik jako rozwiązany:
+```
+$ git add
+```
+
+```
+$ git rm
+```
+
+##### Łączenie commitów:
+```
+$ git rebase -i
+```
+
+Teraz zastąp to,
+
+```
+pick
+pick
+pick
+```
+
+tym,
+
+```
+pick
+squash
+squash
+```
+
+
+## Cofnij
+
+##### Odrzuć wszystkie lokalne zmiany w twoim katalogu roboczym:
+```
+$ git reset --hard HEAD
+```
+
+##### Usuń wszystkie pliki ze staging area(czyli cofnij ostatnie `git add`):
+```
+$ git reset HEAD
+```
+
+##### Odrzuć lokalne zmiany w określonym pliku:
+```
+$ git checkout HEAD
+```
+
+##### Cofnij commit (tworząc nowy commit z przeciwnymi zmianami):
+```
+$ git revert
+```
+
+##### Zresetuj wskaźnik HEAD do poprzedniego commitu i odrzuć wszystkie zmiany od tego czasu:
+```
+$ git reset --hard
+```
+
+##### Zresetuj wskaźnik HEAD do bieżącego stanu zdalnej gałęzi:
+```
+$ git reset --hard np., upstream/master, origin/my-feature
+```
+
+##### Zresetuj wskaźnik HEAD do poprzedniego commitu i zachowaj wszystkie zmiany jako zmiany niestage'owane:
+```
+$ git reset
+```
+
+##### Zresetuj wskaźnik HEAD do poprzedniego commitu i zachowaj niecommitowane zmiany lokalne:
+```
+$ git reset --keep
+```
+
+##### Usuń pliki, które zostały przypadkowo zcommitowane przed dodaniem ich do .gitignore:
+```
+$ git rm -r --cached .
+$ git add .
+$ git commit -m "remove xyz file"
+```
+
+
+## Git-Flow
+Poprawione [Git-flow](https://github.com/petervanderdoes/gitflow-avh)
+
+### Indeks
+* [Instalacja](#instalacja)
+* [Pierwsze Kroki](#pierwsze-kroki)
+* [Funkcjonalności](#funkcjonalności)
+* [Utwórz Wydanie](#utwórz-wydanie)
+* [Hotfiksy](#hotfiksy)
+* [Komendy](#komendy)
+
+
+
+### Instalacja
+###### Musisz mieć działającą instalację git jako warunek wstępny. Git flow działa na OSX, Linuxie i Windowsie.
+
+##### OSX Homebrew:
+```
+$ brew install git-flow-avh
+```
+
+##### OSX Macports:
+```
+$ port install git-flow
+```
+
+##### Linux (oparty na Debianie):
+```
+$ sudo apt-get install git-flow
+```
+
+##### Windows (Cygwin):
+###### Potrzebujesz wget oraz util-linux żeby zainstalować git-flow.
+```bash
+$ wget -q -O - --no-check-certificate https://raw.githubusercontent.com/petervanderdoes/gitflow/develop/contrib/gitflow-installer.sh install | bash
+```
+
+
+### Pierwsze Kroki
+###### Git flow musi zostać zainicjowany, aby dostosować konfigurację projektu do własnych potrzeb. Zacznij używać git-flow inicjalizując go wewnątrz istniejącego repozytorium git:
+##### Inicjalizacja:
+###### Będziesz musiał odpowiedzieć na kilka pytań dotyczących konwencji nazewnictwa dla twoich gałęzi. Zaleca się używanie wartości domyślnych.
+```shell
+git flow init
+```
+lub
+###### Żeby użyć ustawień domyślnych
+```shell
+git flow init -d
+```
+
+
+### Funkcjonalności
+###### Twórz nowe funkcjonalności dla nadchodzących wydań. Zazwyczaj istnieją tylko w repozytoriach deweloperów.
+##### Utwórz nową funkcjonalność:
+###### Ta czynnośc tworzy nową gałąź funkcjonalności wzorowaną na 'develop' i zmienia na tę gałąź.
+```
+git flow feature start MOJAFUNKCJA
+```
+
+##### Ukończ funkcjonalność:
+###### Dokończ tworzenie funkcjonalności. Ta czynność wykonuje następujące zadania:
+###### 1) Łączy MOJAFUNKCJA w 'develop'.
+###### 2) Usuwa gałąź funkcjonalności.
+###### 3) Zmienia z powrotem na gałąź 'develop'.
+```
+git flow feature finish MOJAFUNKCJA
+```
+
+##### Publikowanie funkcji:
+###### Tworzysz funkcjonalność w ramach współpracy? Opublikuj funkcjonalność na zdalnym serwerze, aby mogli z niej korzystać inni użytkownicy.
+```
+git flow feature publish MOJAFUNKCJA
+```
+
+##### Pobieranie opublikowanej funkcji:
+###### Pobierz funkcję opublikowaną przez innego użytkownika.
+```
+git flow feature pull origin MOJAFUNKCJA
+```
+
+##### Śledź funkcję na origin:
+###### Możesz śledzić funkcję na origin używając:
+```
+git flow feature track MOJAFUNKCJA
+```
+
+
+### Utwórz Wydanie
+###### Wspiera przygotowanie nowego wydania produkcyjnego. Umożliwia poprawki drobnych błędów i przygotowanie meta-danych do wydania.
+
+##### Rozpocznij wydanie:
+###### Aby rozpocząć wydanie, użyj polecenia git flow release. Tworzy ono gałąź wydania utworzoną z gałęzi 'develop'. Opcjonalnie możesz podać hash SHA-1 commitu [BASE], od którego rozpocznie się wydanie. Commit musi znajdować się w gałęzi 'develop'.
+```
+git flow release start RELEASE [BASE]
+```
+###### Rozsądnie jest opublikować gałąź release po jej utworzeniu, aby umożliwić commitowanie wydania innym developerom. Zrób to podobnie do publikowania funkcji za pomocą polecenia:
+```
+git flow release publish RELEASE
+```
+###### (Możesz śledzić zdalne wydanie za pomocą komendy: ```git flow release track RELEASE```)
+
+##### Kończenie wydania:
+###### Kończenie wydania jest jednym z głównych kroków w rozgałęzianiu git. Wykonuje on kilka czynności:
+###### 1) Łączy gałąź wydania z powrotem w gałąź 'master'
+###### 2) Taguje wydanie jego nazwą
+###### 3) Łączy gałąź wydania z powrotem w gałąź 'develop'
+###### 4) Usuwa gałąź wydania
+```
+git flow release finish RELEASE
+```
+###### Nie zapomnij spushować swoich tagów używając ```git push --tags```
+
+
+
+### Hotfiksy
+###### Hotfiksy powstają w wyniku konieczności natychmiastowego działania w przypadku niepożądanego stanu wersji produkcyjnej. Mogą być odgałęzione od odpowiedniego znacznika na gałęzi głównej, która oznacza wersję produkcyjną.
+
+##### Początek Git flow hotfiksa:
+###### Tak jak inne komendy git flow, hotfiks rozpoczyna się:
+```
+$ git flow hotfix start VERSION [BASENAME]
+```
+###### Argument "version" oznacza nazwę nowego wydania hotfiksa. Opcjonalnie możesz określić nazwę bazową, od której chcesz rozpocząć.
+
+##### Kończenie hotfiksa:
+###### Po ukończeniu hotfiksa zostaje on scalony z powrotem do wersji rozwojowej i głównej. Dodatkowo główne złączenie jest oznaczane wersją hotfiksa.
+```
+git flow hotfix finish VERSION
+```
+
+
+### Komendy
+
+
+
+
+
+### Schemat Git flow
+
+
+
+
+
\ No newline at end of file