Jak chcesz przejść do swoich zmian to
git checkout mojbranch
Następnie jak chcesz dołączyć zmiany z mastera do swojego brancha to
git merge master
IOT SDK
Patrzysz gdzie jesteś.
co lokalnie do czego zdalnie
Jesteś na gałęzi master i robisz sobie jakieś zmiany w plikach.
Możesz zmieny dodać do schowka lub utworzyć nową gałąź. Przełączasz się na nowo utworzoną gałąź, a tak naprawdę tworzysz nową i się przełączasz. Jest ona kopią tej, w której aktualnie jesteś
Dodajesz do schowka i zapisujesz zmianę z jakimś komentarzem
Patrzysz na status
Na gałęziach lokalnego repo widać gdzie masz zmiany
Teraz jeśli chcesz, żeby na gałęzi master pojawiła się zmiana z gałezi nowy to przeskakujesz i łączysz
Status gałęzi master
Wszystko zależy jaką taktykę obierzesz. Możesz swoje zmiany trzymać w gałęzi nowy i łączyć ją do mastera, albo odwrotnie. Nie zmienia to faktu, że mogą wsytąpić konflikty i wtedy musisz je rozwiązać przy użyciu
Możesz też dodać inne repo zdalne, z których będziesz pobierał zmiany. Ale to może jak ogarniesz sobie i poćwiczysz. Polecam przestudiować sobie tę pozycje. Jest też obszerniejsza druga część
Kod: Zaznacz cały
git status
On branch master
Your branch is up to date with 'origin/master'.
nothing to commit, working tree clean
Kod: Zaznacz cały
git branch -va
* master 2e7556d Adjust config generation messages
remotes/origin/HEAD -> origin/master
remotes/origin/espressif 6aec708 Dockerfile reorganization
remotes/origin/local ac7500a Configuration for running another local dev instance with docker for multi-instance tests
remotes/origin/master 2e7556d Adjust config generation messages
remotes/origin/qnap a7e41bf Bump version to 2.3.12
remotes/origin/src 631d0bd Cloud v2.3.17, Core v2.3.16
remotes/origin/supla-core-devel 1093d9e Files moved one level higher
remotes/origin/v2.4 4709a69 Upgrade PHP to 7.1
Kod: Zaznacz cały
git status
On branch master
Your branch is up to date with 'origin/master'.
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
zmodyfikowany: docker-compose.yml
Kod: Zaznacz cały
git checkout -b nowy
git status
On branch nowy
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)]
zmodyfikowany: docker-compose.yml
Kod: Zaznacz cały
git add .
git commit -m "Moja zmiana"
Kod: Zaznacz cały
git status
On branch nowy
nothing to commit, working tree clean
Kod: Zaznacz cały
git branch -va
master 2e7556d Adjust config generation messages
* nowy 96eb3eb Moja zmiana
remotes/origin/HEAD -> origin/master
remotes/origin/espressif 6aec708 Dockerfile reorganization
remotes/origin/local ac7500a Configuration for running another local dev instance with docker for multi-instance tests
remotes/origin/master 2e7556d Adjust config generation messages
remotes/origin/qnap a7e41bf Bump version to 2.3.12
remotes/origin/src 631d0bd Cloud v2.3.17, Core v2.3.16
remotes/origin/supla-core-devel 1093d9e Files moved one level higher
remotes/origin/v2.4 4709a69 Upgrade PHP to 7.1
Teraz jeśli chcesz, żeby na gałęzi master pojawiła się zmiana z gałezi nowy to przeskakujesz i łączysz
Kod: Zaznacz cały
git checkout master
Switched to branch 'master'
Your branch is up to date with 'origin/master'.
git merge nowy
Kod: Zaznacz cały
git status
On branch master
Your branch is ahead of 'origin/master' by 1 commit.
(use "git push" to publish your local commits)
nothing to commit, working tree clean
Kod: Zaznacz cały
git branch -va
* master 96eb3eb [ahead 1] Moja zmiana
nowy 96eb3eb Moja zmiana
remotes/origin/HEAD -> origin/master
remotes/origin/espressif 6aec708 Dockerfile reorganization
remotes/origin/local ac7500a Configuration for running another local dev instance with docker for multi-instance tests
remotes/origin/master 2e7556d Adjust config generation messages
remotes/origin/qnap a7e41bf Bump version to 2.3.12
remotes/origin/src 631d0bd Cloud v2.3.17, Core v2.3.16
remotes/origin/supla-core-devel 1093d9e Files moved one level higher
remotes/origin/v2.4 4709a69 Upgrade PHP to 7.1
Kod: Zaznacz cały
git mergetool
Ostatnio zmieniony czw lis 28, 2019 10:58 pm przez lesny8, łącznie zmieniany 1 raz.
Czekam na kolejne Supla Offline Party
@lesny8 - dzięki za tak szczegółowe objaśnienie. ( Teraz to będę powoli studiował i analizował )
@pzygmunt - również chciałbym bardzo podziękować.
Tak na już.
Może komuś jeszcze się przyda.
Wpisując pokolei:
Zródła mi się zaktualizowały (z ver2.7.10 do 2.7.16),
oraz pozostały wszystkie moje zmiany.
Choć szczerze mówiąć nie wiem gdzie się zapisały "pliki" ( Moje zmiany oraz mojbranch )
Ale może je kiedyś znajdę.
@pzygmunt - również chciałbym bardzo podziękować.
Tak na już.
Może komuś jeszcze się przyda.
Wpisując pokolei:
Kod: Zaznacz cały
git checkout -b mojbranch
git add .
git commit -m "Moje zmiany"
git checkout master
git pull
git checkout mojbranch
git merge master
oraz pozostały wszystkie moje zmiany.
Choć szczerze mówiąć nie wiem gdzie się zapisały "pliki" ( Moje zmiany oraz mojbranch )
Ale może je kiedyś znajdę.
Git to kontroluje i jak się przełączasz pomiędzy branchami to wtedy wczytuje Ci odpowiednią listę plików lub wersje plików
Wejdź na githuba i przełącz się pomiędzy gałęziami master i src. Tak samo jest lokalnie. W Twoim przypadku jak edytujesz plik w jednej gałęzi zapiszesz zmiany do schowka i zatwierdzisz, to po przejściu do innej, starej gałęzi tych zmian nie zobaczysz. Jak chcesz mieć je również tam, to musisz połączyć zmiany z obu gałęzi.
Wejdź na githuba i przełącz się pomiędzy gałęziami master i src. Tak samo jest lokalnie. W Twoim przypadku jak edytujesz plik w jednej gałęzi zapiszesz zmiany do schowka i zatwierdzisz, to po przejściu do innej, starej gałęzi tych zmian nie zobaczysz. Jak chcesz mieć je również tam, to musisz połączyć zmiany z obu gałęzi.
Czekam na kolejne Supla Offline Party
Git zapisuje wszystko w ukrytym katalogu ".git"
Pliki, które normalnie widzisz są kopią aktualnego brancha. Robiąc commit, wrzucasz zmiany do .git
Widzimy się na Supla Offline Party vol. 2
Koledzy.
Chodzi mi o gpio3.
O ile potrafię już ustawić gpio3, aby można bylo podpiąć do niego ds-a lub kontaktron,
Nie potrafię "zmusić" gpio3 do pracy z wyłącznikiem monostabilnym.
Podejrzewam, że "coś" trzeba zmienić lub zmodyfikować w pliku
supla_esp_gpio.c
Czy mógłbym prosić o pomoc, chyba, że się nie da.
Chodzi mi o gpio3.
O ile potrafię już ustawić gpio3, aby można bylo podpiąć do niego ds-a lub kontaktron,
Nie potrafię "zmusić" gpio3 do pracy z wyłącznikiem monostabilnym.
Podejrzewam, że "coś" trzeba zmienić lub zmodyfikować w pliku
supla_esp_gpio.c
Czy mógłbym prosić o pomoc, chyba, że się nie da.
Wracając do gpio3 (RX), przy wyborze jako wyłącznik ( monostabilny).
TEORETYCZNIE działa,
ALE tak jakby " coś " ( programowo ), cały czas ciągnęło te gpio3 do GND.
Dlatego w praktyce nie potrafię go ( gpio3 ), zmusić do pracy z wyłącznikiem ( monostabilnym ).
Korzystam z gotowego przykładu sonoff_touch_dual z github-a Supli.
Czemu tak mi na tym gpio3 zależy?.
Ponieważ sonoff touch dual, który ostatnio nabyłem ( brak wymaganego przewodu N ), posiada jeden z "przycisków" na gpio3.
Osobiście dalej twierdzę, że ( na dzień dzisiejszy ), softy pisane w linuxie, są dużo lepsze, niż te pisane w arduino ide.
Chodzi o pracę przy braku wifi.
Czy jest na to jakieś rozwiązanie ???
TEORETYCZNIE działa,
ALE tak jakby " coś " ( programowo ), cały czas ciągnęło te gpio3 do GND.
Dlatego w praktyce nie potrafię go ( gpio3 ), zmusić do pracy z wyłącznikiem ( monostabilnym ).
Korzystam z gotowego przykładu sonoff_touch_dual z github-a Supli.
Czemu tak mi na tym gpio3 zależy?.
Ponieważ sonoff touch dual, który ostatnio nabyłem ( brak wymaganego przewodu N ), posiada jeden z "przycisków" na gpio3.
Osobiście dalej twierdzę, że ( na dzień dzisiejszy ), softy pisane w linuxie, są dużo lepsze, niż te pisane w arduino ide.
Chodzi o pracę przy braku wifi.
Czy jest na to jakieś rozwiązanie ???
Tak.
Próbowałem, na Wemos-ie d1 mini, Wemos-ie pro, Sonoff-ie basic, itd.
Osobiście staram się dopiero prosić o pomoc jeżeli mimo różnych prób, " coś " mi nie działa.
Tutaj znalazłem ten sam problem, ale nie mogę znaleźć, czy został rozwiązany.
viewtopic.php?p=4866#p4866