IOT SDK

Patryk
Posty: 610
Rejestracja: pn sty 07, 2019 7:51 pm

wt lis 26, 2019 9:52 pm

lesny8 pisze:
wt lis 26, 2019 9:33 pm

Kod: Zaznacz cały

git add .
Dodajesz wszystkie zmienione plki, albo

Kod: Zaznacz cały

git add ściżka_do_jednego_pliku
Dzięki
A więc po kolei wpisywałem:

Kod: Zaznacz cały

git checkout -b mojbranch

git add .

git commit -m "Moje zmiany"

git checkout master

git pull
Zródła mi się zaktualizowały (z ver2.7.10 do 2.7.16),
ale znikneły wszystkie moje zmiany.
Awatar użytkownika
pzygmunt
Posty: 7364
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontaktowanie:

wt lis 26, 2019 10:06 pm

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
Awatar użytkownika
klew
Posty: 344
Rejestracja: czw cze 27, 2019 12:16 pm

wt lis 26, 2019 10:08 pm

git checkout przełącza między branchami. Twoje zmiany są w branchu mojbranch, a nie na master
Awatar użytkownika
lesny8
Posty: 907
Rejestracja: pn gru 11, 2017 9:43 pm

wt lis 26, 2019 10:46 pm

Patrzysz gdzie jesteś.

Kod: Zaznacz cały

git status
On branch master
Your branch is up to date with 'origin/master'.

nothing to commit, working tree clean
co lokalnie do czego zdalnie

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
Jesteś na gałęzi master i robisz sobie jakieś zmiany w plikach.

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
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ś

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
Dodajesz do schowka i zapisujesz zmianę z jakimś komentarzem

Kod: Zaznacz cały

git add .
git commit -m "Moja zmiana"
Patrzysz na status

Kod: Zaznacz cały

git status
On branch nowy
nothing to commit, working tree clean
Na gałęziach lokalnego repo widać gdzie masz zmiany

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
Status gałęzi master

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
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

Kod: Zaznacz cały

git mergetool
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ęść ;)
Ostatnio zmieniony czw lis 28, 2019 10:58 pm przez lesny8, łącznie zmieniany 1 raz.
Patryk
Posty: 610
Rejestracja: pn sty 07, 2019 7:51 pm

wt lis 26, 2019 11:10 pm

@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:

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
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ę. ;)
Awatar użytkownika
lesny8
Posty: 907
Rejestracja: pn gru 11, 2017 9:43 pm

wt lis 26, 2019 11:31 pm

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.
Awatar użytkownika
klew
Posty: 344
Rejestracja: czw cze 27, 2019 12:16 pm

śr lis 27, 2019 12:23 am

Patryk pisze:
wt lis 26, 2019 11:10 pm
Choć szczerze mówiąć nie wiem gdzie się zapisały "pliki" ( Moje zmiany oraz mojbranch )
Ale może je kiedyś znajdę. ;)
Git zapisuje wszystko w ukrytym katalogu ".git"
Pliki, które normalnie widzisz są kopią aktualnego brancha. Robiąc commit, wrzucasz zmiany do .git
Patryk
Posty: 610
Rejestracja: pn sty 07, 2019 7:51 pm

śr sty 01, 2020 4:08 pm

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.
Patryk
Posty: 610
Rejestracja: pn sty 07, 2019 7:51 pm

ndz sty 05, 2020 9:32 pm

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 ???
Awatar użytkownika
lesny8
Posty: 907
Rejestracja: pn gru 11, 2017 9:43 pm

ndz sty 05, 2020 9:52 pm

A próbowałeś może ten sam soft uruchomić na innym sprzęcie, żeby sprawdzić czy takie samo zachowanie będzie?
ODPOWIEDZ