Zacznijmy od repozytorium GIT. Utworzymy folder o nazwie Project.git i zainicjuj go, aby stać się zdalnym repozytorium:
Projekt $ mkdir.git
$ CD Project.git/
$ git init - -bere
Zainicjowane puste repozytorium Git w/Users/Zakh_Eecs/_Work/Learngit/git_remote_repository/
projekt.git/
Teraz przejdź do nowej lokalizacji, w której możesz utworzyć czysty folder. Utwórz folder Project_Source i zainicjuj go dla GIT:
$ mkdir projekt_source
$ CD Project_Source
$ git init
Zainicjowane puste repozytorium Git/Users/Zakh_Eecs/_Work/Learngit/git_branching_source/
projekt_source/.git/
$ Touch Readme.tekst
$ git add -a
$ git commit -m „początkowe zatwierdzenie”
[Master (root-commit) 176134f] początkowe zatwierdzenie
1 Zmieniony plik, 0 wstawek (+), 0 delecji (-)
Utwórz tryb 100644 README.tekst
Project_SetUp to katalog git z readMe.plik txt. Nie jest to jednak podłączone do naszego zdalnego repozytorium. Skonfigurujmy projekt.git, aby być zdalnym repozytorium dla projektu_source. Możemy to osiągnąć poprzez następujące polecenie:
$ git zdalny dodaj pochodzenie/użytkowe/zaecs/_work/uczenia sięgit/git_remote_repository/projekt.git
$ git push pochodzenie mistrz
Liczenie obiektów: 3, gotowe.
Pisanie obiektów: 100% (3/3), 213 bajtów | 0 bajtów/s, gotowe.
Razem 3 (Delta 0), ponownie użyty 0 (Delta 0)
To/Users/Zakh_Eecs/_Work/Learngit/git_remote_repository/projekt.git
* [Nowa gałąź] Master -> Master
Dzięki poleceniu GIT Remote Add ADD, stworzyliśmy połączenie między projektem.Git i Project_Source. Dzięki komendzie GIT Push Origin Master popchnęliśmy naszą gałąź do zdalnego repozytorium.
Sprawdźmy nasze gałęzie (wciąż w folderze Project_Source):
$ git oddział
* gospodarz
$ git oddział -r
Origin/Master
$ git oddział -a
* gospodarz
Remotes/Origin/Master
Pierwsze polecenie pokazuje tylko oddział lokalny. Opcja -r pokazuje zdalną gałąź. A opcja -a pokazuje zarówno lokalny, jak i zdalny.
Utwórzmy kilka oddziałów w naszym katalogu roboczym:
Rozwój oddziału $ git
$ git oddział hotfix
$ git oddział eksperymentalny
$ git oddział -a
rozwój
eksperymentalny
Hotfix
* gospodarz
Remotes/Origin/Master
Stworzyliśmy gałęzie o nazwie Development, Hotfix i eksperymentalne. Pojawiają się na naszej liście oddziałów lokalnych. Ale w pilotach/pochodzeniu istnieje tylko gałąź główna, ponieważ jest to jedyna, którą popchnęliśmy. Gwiazda (*) Master oznacza, że wciąż jesteśmy w lokalnym oddziale Master. Wejdźmy do oddziału rozwoju, poprowadź zmiany i popchnij te zmiany do zdalnego repozytorium.
$ Git Checkout Development
Przełączony na „rozwój” oddziału
$ echo abc> readme.tekst
$ git add -a
$ git commit -m „Zmodyfikowana oddział rozwoju”
[Rozwój DD9933E] Zmodyfikowana oddział rozwoju
1 Zmieniony plik, 1 wstawienie (+)
$ GIT PUSH ORIGINICE
Liczenie obiektów: 3, gotowe.
Pisanie obiektów: 100% (3/3), 257 bajtów | 0 bajtów/s, gotowe.
Razem 3 (Delta 0), ponownie użyty 0 (Delta 0)
To/Users/Zakh_Eecs/_Work/Learngit/git_remote_repository/projekt.git
* [Nowy oddział] Rozwój -> Rozwój
Sprawdźmy teraz wszystkie gałęzie:
$ git oddział -a
* rozwój
eksperymentalny
Hotfix
gospodarz
piloty/pochodzenie/rozwój
Remotes/Origin/Master
Widzimy, że jesteśmy w lokalnym oddziale rozwoju, ale istnieje również oddział zdalny. Kiedy popchnęliśmy nasze zmiany w rozwój GIT Push Origin, stworzył oddział rozwoju w pilotach/pochodzeniu.
Wyjdźmy teraz z projektu_source i znajdź świeże miejsce, w którym możemy mieć nowy folder. Tutaj sklonujemy zdalne repozytorium za pomocą następującego polecenia:
$ git Clone/Users/Zakh_Eecs/_Work/Learngit/git_remote_repository/projekt.git
Klonowanie w „Project”…
zrobione.
Sklonowaliśmy nową kopię o nazwie Project z projektu.git. Wejdź do folderu projektu i sprawdź gałęzie:
$ CD Project
$ git oddział
* gospodarz
Kiedy Git tworzy początkowy klon ze zdalnego repozytorium, dostaje tylko gałąź główną. Jeśli używamy opcji -a, widzimy:
$ git oddział -a
* gospodarz
Remotes/Origin/Head -> Origin/Master
piloty/pochodzenie/rozwój
Remotes/Origin/Master
Zauważ, że nie ma lokalnego oddziału rozwoju. Ponadto nigdy nie pchaliśmy gałęzi Hotfix i eksperymentalnych od Project_Source do Project.git, więc ich nie widzimy. Zdalne repozytorium ma gałęzie główne i programistyczne (piloty/pochodzenie/głowa -> pochodzenie/mistrz nie jest gałęzią, po prostu mówi ci, gdzie wskazuje głowa).
Wprowadźmy gałęznę rozwoju do naszego środowiska pracy:
$ git fetch -wszystko
Pobieranie pochodzenia
$ Git Checkout Development
Rozwój oddziału ustanowiony w celu śledzenia zdalnego rozwoju oddziału z pochodzenia.
Przeszedł na „rozwój” nowego oddziału
Jeśli używasz starszej wersji GIT, być może będziesz musiał użyć:
$ Git Checkout Development pochodzenie/rozwój
Teraz, jeśli użyjemy polecenia gałęzi, otrzymujemy:
$ git oddział -a
* rozwój
gospodarz
Remotes/Origin/Head -> Origin/Master
piloty/pochodzenie/rozwój
Remotes/Origin/Master
Możemy wprowadzić zmiany w gałęzi rozwoju, popełnić zmiany, a następnie naciskać za pomocą komendy rozwoju pochodzenia git push.
Podsumowując
Kiedy pracujesz z GitHub i Bitbucket, możesz użyć linku HTTPS lub SSH, aby połączyć się z zdalnym repozytorium. Więc ustawisz swoje pochodzenie na te linki. Ale zasady odległej gałęzi są takie same, jak opisano tutaj.