Cześć, czy może ktoś wie czy w Gicie można zrobić pull innego brancha bez przechodzenia na niego? Przejrzałem StackOverflow ale więcej tam filozofii niż praktycznych rozwiązań. A może się nie da?

- Rejestracja:około 21 lat
- Ostatnio:prawie 3 lata
- Lokalizacja:Space: the final frontier
- Postów:26433
Co to znaczy dla ciebie pullowanie z innego brancha
? Możesz zrobić merge albo rebase pomiędzy dowolnymi branchami przecież. Jesteś na swoim branchu i robisz merge albo rebase z innym branchem i tyle. Przecież nigdy nie zmieniasz brancha na ten z którego chcesz pobierać zmiany! Zawsze robisz to będąc na "docelowym" branchu.
- Rejestracja:około 4 lata
- Ostatnio:prawie 4 lata
- Postów:204
Podpowiem, że będąc na "swoim" to tak naprawdę pullujesz z innego brancha - ale o tej samej nazwie na repo zdalnym - pewnie Origin. Wystarczy pullować, z innej gałęzi będąc na swojej. Z głowy : git fetch origin/other_branch && git checkout my_branche && git merge origin/other_branch
- Rejestracja:ponad 19 lat
- Ostatnio:dzień
- Postów:856
Struktura repozytorium jest taka że kolejne wersje systemu są odkładane jako branche. I tak np. kończąc dany zestaw ficzerów robiony jest branch z wersją. Czyli master to linia produkcyjna, a branche to zakończone wersje.
I teraz np. master to wersja 5, wiec branche to 4,3,2,1. Poprawiamy coś na branchu 2, commit i cherry pick na branche 3, 4 i master.
I czy będąc na tym branchu nr 2 można pullować zmiany na innych branchach z repo zdalnego.
A dlaczego? Ponieważ to duży projekt i zmiana brancha pomimo że całkiem szybka to IDE dostaje przy tym palpitacji serca.
@pragmaticdev sprawdzę czy to zadziała.

- Rejestracja:około 21 lat
- Ostatnio:prawie 3 lata
- Lokalizacja:Space: the final frontier
- Postów:26433
commit i cherry pick na branche 3, 4 i master
Czemu nie rebase? Byłoby bardziej naturalnie, a cherry-pick sprawia ze z czasem będzie gorzej...
I czy będąc na tym branchu nr 2 można pullować zmiany na innych branchach z repo zdalnego.
Ok, teraz rozumiem co chcesz zrobić. Odpowiedź brzmi: zrób to w takim razie z konsoli skoro zmiana w IDE tak cię boli.

- Rejestracja:około 9 lat
- Ostatnio:około 2 lata
MiL napisał(a):
Właśnie o konsolę mi chodzi, IDE tego nie potrafi. Nawet w Sourcetree nie widzę takiej możliwości bez zmiany brancha.
Nie pytajcie o strukturę dlaczego tak a nie inaczej bo ktoś to wymyślił lata temu i tak już jest.
No ale jak z konsoli zmieniasz brancha to też tak powoli się robi...?
- Rejestracja:ponad 19 lat
- Ostatnio:dzień
- Postów:856
Sam branch zmienia się w miarę szybko, ale to powoduje że pliki projektu się zmieniają, wtedy IDE widzi zmianę, zaczyna indeksować, ładować, wentylator startuje aż czasem w końcu się wywali. Mamy kilka makr które automatyzują pracę z gitem np. pullowanie wszystkich lokalnych branchy, ale te makra skaczą po branchach i wtedy robi się to co się robi.
Nie jestem orłem z gita, może to jakiś poroniony pomysł, ale było by to przyjemne :)

- Rejestracja:około 9 lat
- Ostatnio:około 2 lata
MiL napisał(a):
Sam branch zmienia się w miarę szybko, ale to powoduje że pliki projektu się zmieniają, wtedy IDE widzi zmianę, zaczyna indeksować, ładować, wentylator startuje aż czasem w końcu się wywali. Mamy kilka makr które automatyzują pracę z gitem np. pullowanie wszystkich lokalnych branchy, ale te makra skaczą po branchach i wtedy robi się to co się robi.
Nie jestem orłem z gita, może to jakiś poroniony pomysł, ale było by to przyjemne :)
To rób jak niektórzy sugerowali:
- zamykasz IDE
- robisz swoje z konsoli
- otwierasz IDE
- Rejestracja:około 4 lata
- Ostatnio:prawie 4 lata
- Postów:204
Tez miałem taki problem. Zreszta budowanie systemu trwało kilka godzin. Dlatego miałem n sklonowanych repo, żeby nie musieć przełączać całych branchow a synchronizacja była między repami lokalnymi Ew na remote. Wtedy ide łapało np zmianę jednego pliku po mergu a nie całej gałęzi.

- Rejestracja:ponad 4 lata
- Ostatnio:około 8 godzin
- Postów:5
Nie wiem czy dobrze rozumiem problem ale może każdy branch jako osobne drzewo i wtedy problem zmiany brancha znika całkowicie. https://git-scm.com/docs/git-worktree