Git Push ERROR: nie znaleziono repozytorium


355

Mam bardzo dziwny problem z giti github. Kiedy próbuję naciskać, otrzymuję:

git push -u origin master
ERROR: Repository not found.
fatal: The remote end hung up unexpectedly

Dodałem pilota:

git remote add origin git@github.com:account-name/repo-name.git

Jakieś pomysły?


2
Tak, tak dostałem git remote add origin git@github.com:account-name/repo-name.git. Istnieje w GitHub i jest to prywatne repozytorium.
Justin

1
czy dokładnie sprawdziłeś nazwy użytkowników i repozytoriów?
naukowiec

2
czy zmieniłeś nazwę użytkownika github
Ankit

2
Czy jest jakaś szansa związana z uprawnieniami do odczytu / zapisu w repozytorium? Mam repozytorium tylko do odczytu i otrzymuję tę wiadomość, gdy próbuję coś wcisnąć
Michael

3
Miałem ten sam problem. Rozwiązałem go, aktualizując plik .git / config. Umieszczam nazwę użytkownika w kluczu URL [remote "origin"]sekcji.
Ahmed Jehanzaib,

Odpowiedzi:


512

Sprawdź, czy masz dostęp do odczytu i zapisu.

Komunikat o błędzie Gita wprowadza w błąd. Miałem podobny problem. Zostałem dodany do istniejącego projektu. Sklonowałem go i dokonałem lokalnej zmiany. Poszedłem do push i dostałem ERROR: Repository not found.komunikat o błędzie.

Osoba, która dodała mnie do projektu, dała mi dostęp do repozytorium tylko do odczytu. Zmiana przez nich i byłem w stanie naciskać.


290
Uwielbiam te przydatne komunikaty o błędach Gita. Nie mogę znaleźć repozytorium, z którego właśnie sklonowałem, co? Kłamca.
Grant Birchmeier,

ten sam problem tutaj - brak praw do zatwierdzania i
pojawia

12
@GrantBirchmeier Chcę głosować 100 razy za komentarz.
technophyle,

16
Dziękuję Ci! Możesz to sprawdzić, przeglądając projekt w Internecie i klikając „Nowy plik”
Ronnie

2
Więc dla mnie moje hasło zawierało `(tyknięcie), a PhpStorm usuwał znak przed wysłaniem git push: Powiedzmy, że w tym przykładzie moje hasło to _pa``ssword_ Phpstorm wyświetli:: https://_username_:_password_@github.com/_username_/repo.git zamiast https://_username_:_pa``ssword_@github.com/_username_/repo.git zmiany hasła na coś, co nie używa` postać. PRACUJE!!!
Ruben Arevalo,

128

Natrafiłem na ten sam problem i rozwiązałem go, podając moją nazwę użytkownika i hasło w adresie URL repozytorium:

git clone https://myusername:mypassword@github.com/path_to/myRepo.git

29
Działa to dla mnie, dodając tylko moją nazwę użytkownika:https://myusername@github.com/path_to/myRepo.git
redolent

5
to działa, ale oczywiście wiele osób uważa to za problem bezpieczeństwa; używaj ostrożnie
Alexander Mills,

To zadziałało dla mnie. Używałem Git Bash wcześniej na innym koncie i nie mogłem wymyślić, jak je zmienić, więc proszę bardzo. Nie podoba mi się to, ale działa.
HartleySan

1
Jako kontynuacja mojego oryginalnego komentarza, po pomyślnym jednokrotnym wypchnięciu możesz użyć git remote set-url origin urlpolecenia, aby zmienić pierwotny adres URL na to samo bez nazwy użytkownika i hasła, a następnie działa poprawnie.
HartleySan

1
Właśnie uratowałeś mi kolego! Twoje zdrowie!
Eldho Paul Konnanal

105

Miałem ten sam problem z prywatnym repozytorium.

wykonaj następujące czynności:

usuń zdalne pochodzenie

git remote rm origin

ponownie dodaj pochodzenie, ale z twoją nazwą użytkownika i pwd z uprawnieniami do pisania na tym repozytorium pvt

git remote add origin  https://USERNAME:PASSWORD@github.com/username/reponame.git

12
Co jeśli hasło ma @?
AnupamChugh

16
@AnupamChugh musisz zamienić „@” na „% 40” w swoim haśle. Zasadniczo możesz to sprawdzić, uruchamiając kod JSencodeURIComponent(password)
elquimista

1
Zalecam użycie pomocnika poświadczeń zamiast przechowywania hasła w postaci zwykłego tekstu: help.github.com/articles/caching-your-github-password-in-git
Johnsyweb

2
Dziękuję, pomogło bez żadnych problemów!
Matan Dahan,

4
Wreszcie! Połów dotyczy PRYWATNEGO REPO. Działa to, jeśli masz prywatne repozytorium i otrzymujesz ten błąd, postępując zgodnie z instrukcjami hubu Git, aby przekazać istniejące repozytorium z lokalnego w Xcode do zdalnego w Github: $ git push -u origin master remote: Repository not found. fatal: repository 'https://github.com/teksunios/Abc.git/' not found
iHarshil

67

Otrzymywałem ten sam błąd

ERROR: Repository not found.   
fatal: The remote end hung up unexpectedly

i utworzyłem repozytorium na Githubie i sklonowałem je lokalnie.

Byłem w stanie rozwiązać, otwierając .git / config i usuwając [remote "origin"]sekcję.

[remote "origin"]   
   url = git@github.com:alexagui/my_project.git  
   fetch = +refs/heads/*:refs/remotes/origin/*

potem uruchomiłem następujące (ponownie)

git remote add origin git@github.com:alexagui/my_project.git  
git push -u origin master

i tym razem udało mi się przepchnąć do repozytorium.


3
Czy możesz wyjaśnić, w jaki sposób otworzyłeś .git / config i usunąłeś sekcję [zdalne „pochodzenie”]?
Davi Moreira,

Przybyłem tutaj, szukając odpowiedzi na podobny problem. Utworzyłem nowe repozytorium z IntelliJ IDEA, ale otrzymałem ten sam komunikat o błędzie, gdy próbowałem wykonać mój pierwszy push. Odpowiedź Alexa Aguilara zainspirowała mnie do przejścia do pliku .git / config i edycji adresu URL repozytorium, aby używał mojej nazwy użytkownika wielką pierwszą literą, czego początkowo nie zrobił. To naprawiło mój problem.
Vallle

.git/Katalogu można znaleźć w katalogu głównym projektu.
Gui Imamura,

To również rozwiązało problem - próbowałem zmienić użytkownika w trakcie projektu i otworzyłem świat bólu
gotofritz,

dlaczego to byłoby konieczne? Zmieniłem nazwę użytkownika i teraz mam do czynienia z wieloma problemami.
HighOnMeat

46

Jeśli korzystasz z Git w systemie Windows , spróbuj wyczyścić swoje poświadczenia:

  1. Znajdź „menedżera poświadczeń” (powinien znajdować się w panelu sterowania)
  2. Usuń wszystkie poświadczenia związane z GitHub

wprowadź opis zdjęcia tutaj


3
Fajnie - dzięki za tę udaną wskazówkę! BTW, za pomocą następującego polecenia możesz przejść bezpośrednio do menedżera referencji: „control.exe / name Microsoft.CredentialManager”
Chris

Dzięki, uratuj mój dzień.
Amy

to uratowało mi dzień!
mvermand

1
Jedyną rzeczą, która dla mnie
działała

To zadziałało, miałem inne konto na github, które spowodowało problem
Mokhtar Ashour

27

Wystąpił ten błąd (ale wcześniej działał). Moim problemem był brakujący klucz ssh powiązany z kontem Github. Możesz sprawdzić swoje aktualne klucze ssh za pomocą ssh-add -l.

Jeśli brakuje klucza, możesz go dodać za pomocą

ssh-add ~/.ssh/your_key

2
Zmieniłem swoje konto github i dlatego musiałem zmienić swój istniejący klucz ssh. Twoja poprawka załatwiła sprawę, dzięki!
Thomas Potaire,

Najłatwiejsze rozwiązanie, które dla mnie zadziałało. Dzięki!
Dominique Paul,

23

Miałem podobny problem. Niepoprawne poświadczenia zostały zapisane w pamięci podręcznej w łańcuchu kluczy OS X.

Sprawdź: https://help.github.com/articles/updating-credentials-from-the-osx-keychain


3
Ten sam problem. Otrzymuję remote: Repository not found.dostęp do prywatnego repozytorium. Stało się tak, ponieważ wciąż podłączony do repozytorium ze starymi danymi uwierzytelniającymi (nawet nowymi w lokalnej konfiguracji git). Aby naprawić 1) wyjmij klucz z pęku kluczy. 2) ponownie wykonaj polecenie w terminalu. 3) Powinien poprosić o nazwę użytkownika i hasło.
Nik Kov,

2
To rozwiązało problem. Sprawdziłem poświadczenia w pęku kluczy, otrzymałem nowy osobisty token dostępu za pośrednictwem graficznego interfejsu użytkownika Github i jestem wyłączony, dzięki.
Anthony

@ Odpowiedź Antoine'a mnie spotkała. Niestety znalazłem to po rozwiązaniu problemu. W moim przypadku właśnie włączyłem 2FA (uwierzytelnianie dwuskładnikowe) (TFA). To złamało moje hasło. Więc wyczyściłem dane uwierzytelniające (jak powiedzieli ludzie na tej stronie), ale ponowne zapisanie repozytorium nadal nie powiodło się z moim hasłem (zgaduję z powodu 2FA). Tak więc utworzyłem osobisty token dostępu ( help.github.com/articles/… ), aby używać go zamiast hasła. Dałem mu dostęp tylko do repozytorium, ponieważ jest w wierszu poleceń.
cwingrav

19
git remote rm origin
git remote add origin <remote url>

Pracował dla mnie. Ten problem zaczął pojawiać się po aktualizacji git.
karthikdivi

To zadziałało dla mnie, zmieniając adres URL https na git @ one.
Skoua

17

Używam Maca i starałem się znaleźć rozwiązanie. Mój zdalny adres miał rację i, jak powiedziałem, był to problem z danymi uwierzytelniającymi . Najwyraźniej w przeszłości korzystałem z innego konta Git na moim komputerze, a pęku kluczy Maca pamiętałem dane uwierzytelniające z poprzedniego konta, więc tak naprawdę nie miałem uprawnień do wypychania.

Jak naprawić? Otwórz dostęp do pęku kluczy na komputerze Mac, wybierz kategorię „Wszystkie przedmioty” i wyszukaj git. Usuń wszystkie znalezione wyniki.

Teraz idź do terminalu i spróbuj ponownie. Terminal poprosi o nazwę użytkownika i hasło. Wprowadź nowe odpowiednie poświadczenia i to wszystko!

Mam nadzieję, że to komuś pomoże. Walczyłem z tym przez kilka godzin.


1
Dziękuję dziękuję dziękuję dziękuję dziękuję dziękuję !!!!! Uderzyłem już głową o ścianę.
potibas

To naprawdę pomogło. Próbowałem wszystkiego i po prostu nie mogłem zrozumieć. Push, Pull CLone, działa z IntelliJ, ale nie z terminala. Po wyczyszczeniu pęku kluczy działa jak magia.
Achyut

W przypadku systemu macOS było to jedyne rozwiązanie, które działało dla mnie. Dzięki.
Niraj

14

remote: Repository not found. może być frustrująco mylącym komunikatem o błędzie z podczas próby przekazania do pilota HTTPS, na którym nie masz uprawnień do zapisu .

Sprawdź swoje uprawnienia do zapisu w repozytorium!

Próbowanie zdalnego SSH do tego samego repozytorium pokazuje inną odpowiedź:

% git remote add ssh git@github.com:our-organisation/some-repository.git

% git fetch ssh
From github.com:our-organisation/some-repository
* [new branch]        MO_Adding_ECS_configs             -> ssh/MO_Adding_ECS_configs
* [new branch]        update_gems                       -> ssh/update_gems

% git push ssh     
ERROR: Repository not found.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

„Prawidłowe prawa dostępu?”

Więc dlaczego nie powiedziałeś?

Warto w tym miejscu zauważyć, że chociaż tryb awarii SSH w tym scenariuszu jest nieco lepszy, używam pilotów HTTPS zamiast SSH, ponieważ GitHub zaleca HTTPS zamiast SSH .

Rozumiem, że GitHub używa „Nie znaleziono”, gdzie oznacza „Zabronione” w niektórych okolicznościach, aby zapobiec przypadkowemu zniesieniu istnienia prywatnego repozytorium.

Żądania wymagające uwierzytelnienia w niektórych miejscach zwracają 404 Not Foundzamiast 403 Forbidden. Zapobiega to przypadkowemu wyciekowi prywatnych repozytoriów do nieautoryzowanych użytkowników.

- GitHub

Jest to dość powszechna praktyka w Internecie, w rzeczywistości jest zdefiniowana:

Kod stanu 404 (Nie znaleziono) wskazuje, że serwer źródłowy nie znalazł bieżącej reprezentacji zasobu docelowego lub nie chce ujawnić, że istnieje.

- 6.5.4. 404 Nie znaleziono, RFC 7231 HTTP / 1.1 Semantyka i treść (moje wyróżnienie)

Nie ma dla mnie sensu, gdy jestem uwierzytelniany w GitHub przy pomocy pomocnika poświadczeń i mam dostęp do tego repozytorium (po pomyślnym sklonowaniu i pobraniu go), że GitHub zdecydowałby się ukryć przede mną swoje istnienie z powodu braku uprawnień do zapisu.

Sprawdzanie https://github.com/our-organisation/some-repository/ za pomocą przeglądarki internetowej potwierdziło, że nie mam uprawnień do zapisu w repozytorium . Administratorzy GitHub naszego zespołu byli w stanie udzielić mojemu zespołowi prawa do zapisu w krótkim czasie i mogłem przyspieszyć rozwój gałęzi.


10

Jeśli Twoje repo działało wcześniej normalnie i nagle pojawia się ten błąd, najprawdopodobniej przyczyną będzie uwierzytelnienie Twojego gita jako innego użytkownika, który nie ma dostępu do repozytorium . Aby przesuwać, wszystko, co musisz zrobić, to podać poprawną nazwę użytkownika i hasło w poleceniu git. Polecenie push dla repozytorium github wyglądałoby następująco:

git push https://youruser:password@github.com/user/reponame.git

username and passwordmusi być poprzedzony url, więc @ należy zastąpić % 40 i tak dalej.


To zadziałało dla mnie po raz pierwszy. Problem początkowo utworzyłem, usuwając .gitconfig z C: / users / {nazwa użytkownika}
Mike Upjohn,

9

Jeśli należysz do grupy w Github, sprawdź, czy masz dostęp do zapisu.


1
Jak dokładnie to zrobić? Byłoby bardziej kompletne, gdybyś mógł dodać takie informacje.
Renato Back,

2
właśnie dostałem się do repozytorium git i kliknij dowolny plik i spróbuj go edytować. Jeśli nie masz dostępu do zapisu, pojawi się błąd: „próbujesz edytować plik ....”
mohor chatt,

3
Szybkim sposobem sprawdzenia jest kliknięcie Create new file. Jeśli pojawi się komunikat „Tworzysz plik w projekcie, do którego nie masz dostępu do zapisu”, oznacza to, że nie masz dostępu do zapisu.
wisbucky,

8

Miał podobny problem. Przyczyną problemu było to, że wykonałem kilka samouczków online na temat dodawania nowego repozytorium do Github.

Po prostu przejdź do Github, utwórz nowe repozytorium, poprosi Cię o dodanie README, nie dodawaj go. Utwórz go, a otrzymasz instrukcje, jak pchać.

Jest podobny do dwóch następnych linii:

git remote add origin https://github.com/YOUR_USER/your-repo.git
git push -u origin master

8

To rozwiązało mój problem.

   git pull https://myusername:mypassword@github.com/path_to/myRepo.git

8

To działało dla mnie:

1. Piloty

$ git remote rm origin
$ git remote add origin git@github.com:<USER>/<REPO>.git

Jeśli twój klucz SSH jest już używany na innym przedstawicielu github, możesz wygenerować nowy.

2. Generowanie nowego klucza SSH

$ ssh-keygen -t rsa -b 4096 -C "web@github.com"

3. Dodanie klucza na poziomie agenta SSH

$ eval "$(ssh-agent -s)"
$ ssh-add ~/.ssh/id_rsa_github

4. Dodaj nowy klucz do repozytorium Github.


7

Jednym z problemów, który może być oczywisty dla niektórych, o którym tu nie wspomniano, może być to, że masz dostęp za pomocą kluczy ssh, ale próbujesz połączyć lokalne repozytorium ze zdalnym za pośrednictwem https.

W takim przypadku następujące polecenia powinny rozwiązać problem:

$ git remote -v
origin  https://github.com/private-repo.git (fetch)
origin  https://github.com/private-repo.git (push)
$ git remote rm origin
$ git remote add origin git@github.com:private-repo.git
$ git remote -v
origin  git@github.com:private-repo.git (fetch)
origin  git@github.com:private-repo.git (push)

Uwaga: powyższe działa przy założeniu, że:

  1. twój obecny pilot ma nazwę origini że masz już wygenerowany klucz ssh połączony z kontem github

  2. masz już klucz ssh powiązany z kontem github (i podłączony lokalnie)

  3. masz odpowiednie uprawnienia (odczyt / zapis) na github dla ustawień tego repozytorium.


To zadziałało dla mnie. Ale jaka była przełomowa zmiana? Przez drugi tydzień działało dobrze i było to repo, które mam od lat.
Dylan Nissley,

@DylanNissley być może zmieniły się ustawienia bezpieczeństwa repo? Szczerze mówiąc, nie jestem pewien. : /
John Donner,

6

Musisz sprawdzić dostęp do SSH w następujący sposób:

ssh -T git@github.com

ten problem był spowodowany tym, że nie dodawałem odpowiedzi osoby na SSH w repozytorium, czytaj więcej o SSH link-1 , link-2 .


To pokazało problem z wieloma kluczami i niedziałającym plikiem konfiguracyjnym. Dzięki za wskazówkę.
dibs

5

Poniższe rozwiązało problem dla mnie.

Najpierw użyłem tego polecenia, aby dowiedzieć się, jakie było używane konto github:

ssh -T git@github.com

To dało mi taką odpowiedź:

Hi <github_account_name>! You've successfully authenticated, but GitHub does not provide shell access. I just had to give the access to fix the problem.

Wtedy zrozumiałem, że użytkownik Github opisany w odpowiedzi (nazwa_konta_github) nie był autoryzowany w repozytorium Github, które próbowałem pobrać.


Co zrobić, jeśli otrzymam ten błąd:The authenticity of host 'github.com (192.30.253.112)' can't be established. RSA key fingerprint is SHA256.... Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'github.com,192.30.253.112' (RSA) to the list of known hosts. Permission denied (publickey).
Nik Kov

5

Oto jak rozwiązać mój problem

#check current github account
ssh -T git@github.com

#ensure the correct ssh key used with github
ssh-agent -s
ssh-add ~/.ssh/YOUR-GITHUB-KEY

#re-add the origin
git remote add origin git@github.com:YOUR-USER/YOUR-REPO.GIT
git push -u origin master

4

Jeśli ktoś napotkał problem na github.com, sprawdź, czy zaakceptowałeś zaproszenie po tym, jak właściciel repo zezwolił na zatwierdzenie cię. Do momentu zaakceptowania zaproszenia repo będzie dla Ciebie niewidoczne. Więc dostanieszERROR: Repository not found.


Dzięki, to naprawiło mój problem.
Glen

1
To samo tutaj, oczekiwałbym, że komunikat o błędzie będzie taki jak „Nie masz uprawnień do pisania” lub coś takiego. Dzięki za zwrócenie na to uwagi!
Miguel Péres

Oprogramowanie Linus nie jest oprogramowaniem, które spełnia oczekiwania.
Nakilon,

4

Problem : Github z jakiegoś powodu nie zna Twojego repozytorium.

Błąd: monit w git cli, taki jak:

zdalny: nie znaleziono repozytorium. fatal: nie znaleziono repozytorium „ https://github.com/MyOrganization/projectName.git/

Rozwiązanie: 2 opcje

  1. Github może nie zaznajomić się z twoimi danymi uwierzytelniającymi: - Pierwszą opcją jest sklonowanie projektu z odpowiednimi danymi uwierzytelniającymi user:passwordna wypadek, gdybyś zapomniał o tym Lub wygenerował token ssh i dostosował ten klucz w swoim Githubie. znany jakogit push https://<userName>:<password>@github.com/Company/repositoryName.git

  2. Problem z uprawnieniami do repozytorium z niektórymi użytkownikami - w moim przypadku użycia rozwiązałem ten problem, gdy zdałem sobie sprawę, że nie mam odpowiednich uprawnień do współpracy na Github w moim prywatnym repo. Użytkownicy mogą klonować projekt, ale nie mogą wykonywać żadnych czynności w miejscu pochodzenia. Aby rozwiązać ten problem:

Przejdź do repozytorium na Github -> Ustawienia -> Współpracownicy i zespoły -> Dodaj członka / opiekuna swoich użytkowników -> Teraz mają uprawnienia do zatwierdzania i wypychania


3

Zmiana zawartości pliku .git / config pomaga, jak powiedział Alex powyżej. Wystąpił ten sam problem i chyba dlatego, że zmieniłem nazwę użytkownika Github. Nie można zaktualizować plików lokalnych za pomocą zmian. Być może za każdym razem, gdy zmienisz nazwę użytkownika, możesz rozważyć uruchomienie

git remote add origin your_ssh_link_from_github

Mam nadzieję, że to pomoże ;)


3

Miałem ten sam problem. Spróbuj wykonać następujące czynności:

1. Modyfikacja dostępu do pęku kluczy w systemie Mac dla poświadczeń git rozwiązała problem.
2. Resetowanie adresu początkowego

git remote rm origin
git remote add origin git@github.com:account-name/repo-name.git

3

Jeśli klonujesz z github za pomocą, httpsale używaszssh do wypychania, możesz również otrzymać ten błąd.

Aby to naprawić, otwórz .git/configi zamień:

url = https://github.com/company/project.git

Z

url = git@github.com:company/project.git

I powinieneś być w stanie naciskać bez ostrzeżenia ...


2

Wystąpił ten sam problem. Przez lata wszystko działało dobrze, a potem nagle ten błąd.

Problemem okazało się to, że dodałem klucz wdrażania dla kolejnego repozytorium do mojego agenta SSH przed kluczem github SSH mojego użytkownika (którego zawsze używałem, aby uzyskać dostęp do danego repozytorium). Agent SSH najpierw wypróbował klucz wdrażania dla kolejnego repozytorium, a GitHub z jakiegoś zupełnie niewytłumaczalnego powodu powiedział

ERROR: Repository not found.

Po usunięciu klucza wdrażania z agenta SSH wszystko wróciło do normy.


2

Miałem ten problem i zdałem sobie sprawę, że korzystam z innego konta niż to, którego repo. Logowanie jako pierwotny użytkownik rozwiązało problem.


W moim przypadku założyłem 2 konta i dodałem wpisy w .ssh / config dla aliasu roboczego i osobistego i zapomniałem o tym. zmiana części źródłowej w .git / config katalogu projektu, tak że miałem pracę zamiast „github.com”, rozwiązało problem. Problem polegał na tym, że podczas klonowania użyłem git@github.com: blahblah, a nie git @ work: bla bla.
sourabh

2

Jeśli korzystasz z prywatnego repozytorium, sprawdź, czy jesteś użytkownikiem połączenia, musi on mieć uprawnienia do korzystania z repozytorium.


1

Miałem ten sam problem. Moim problemem było nieporozumienie, że musiałem najpierw stworzyć puste repo na github, zanim zacznę do niego naciskać. Doh! Włączając to tutaj dla każdego, kto nie zdaje sobie sprawy.


1

przejdź do folderu projektu, a następnie wyszukaj folder .git, a następnie otwórz plik konfiguracyjny za pomocą notatnika i sprawdź, czy istnieje link do repozytorium github pod: [zdalne „pochodzenie”], jeśli jest inny niż repo w github następnie po prostu go edytuj lub otwórz nowe repozytorium o nazwie w pliku konfiguracyjnym


1

Moje rozwiązanie może być przydatne dla niektórych z was.

Ten sam błąd wystąpił po zaktualizowaniu systemu operacyjnego mojego Macbooka do Yosemite. Mój problem został rozwiązany przez odtworzenie mojego klucza ssh. Możesz to zrobić, wykonując krok 2 tej strony: https://help.github.com/articles/generating-ssh-keys/

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.