Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Git i samba. Problem z commitem.
sazian
post 23.08.2017, 16:14:15
Post #1





Grupa: Zarejestrowani
Postów: 1 043
Pomógł: 141
Dołączył: 19.09.2006
Skąd: B-tów

Ostrzeżenie: (0%)
-----


Witam,
na małym serwerze mam katalog udostępniany przez sambę do którego ma dostęp wielu użytkowników.
W jednym z katalogów mam utworzone repozytorium gita. Jest tak prosty skrypt php w którym od czasu do czasu trzeba wprowadzać drobne zmiany.
Wygląda to w taki sposób że osoba która wprowadziła zmiany ma po prostu zrobić commita - nie ma tu potrzeby tworzenia "prywatnych" repozytoriów i wysyłania zmian na serwer, wystarczy mi zwykły commit.

Problem jest w tym że jeśli jedna osoba zmieni dowolny plik i zrobi commit to pozostałym osobom wszystkie pliki świecą się jako zmienione. Osoba która robiła commit nie widzi zmian w żadnym pliku, pozostali widzą że wszystkie pliki zostały zmienione. Oczywiście w pliku nie widać żadnej zmiany "w tekście".

Pliki są edytowane przez netbeansa oraz przez niego jest obsługiwany git, ale sprawa ma się podobnie jak jest to obsługiwane częściowo przez konsole.
To znaczy robię
git commit -am "coś"
git status nie pokazuje zmian

ale pozostali w netbeansie widzą wszystkie pliki zmienione.
Jeśli teraz ktoś zrobi commit przez netbeasna to jemu wszytko znika, a ja w konsoli widzę wszystkie pliki zmienione.


Ktoś ma jakiś pomysł co tu jest grane ?
Go to the top of the page
+Quote Post
nospor
post 23.08.2017, 16:34:43
Post #2





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6290
Dołączył: 27.12.2004




Jestes w stanie odpalic tam te komende
git config core.fileMode false
?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Pyton_000
post 23.08.2017, 16:49:12
Post #3





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


`git diff` pokaż z konsoli na "zmienionych" plikach. I też powinno wystarczyć to co @nospor podał ale lepiej się upewnić że chodzi o to co myślę smile.gif
Go to the top of the page
+Quote Post
sazian
post 23.08.2017, 17:52:32
Post #4





Grupa: Zarejestrowani
Postów: 1 043
Pomógł: 141
Dołączył: 19.09.2006
Skąd: B-tów

Ostrzeżenie: (0%)
-----


Filemode był ustawiany,
dla projektu i w ustawieniach globalnych gita na serwerze.

Diffa sprawdzę jutro i dam znać co wyszło.

Dzięki za trop.
Go to the top of the page
+Quote Post
by_ikar
post 24.08.2017, 07:53:43
Post #5





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

Ostrzeżenie: (0%)
-----


Jeżeli najpierw robisz commita a później status - to nie zobaczysz żadnych "nieśledzonych zmian", dlatego że już zmiany zapisałeś - tutaj wszystko się zgadza. Jak już to używa się tego w odwrotnej kolejności.

Cytat
Osoba która robiła commit nie widzi zmian w żadnym pliku, pozostali widzą że wszystkie pliki zostały zmienione.


masz na myśli taki scenariusz:
- zmieniasz coś przez edytor w pliku
- commitujesz go
- inni widzą zmiany
- ty ich nie widzisz, pomimo że zmieniłeś je przez edytor

Trochę dziwnie to brzmi, nie sądzisz?

Cytat
nie ma tu potrzeby tworzenia "prywatnych" repozytoriów i wysyłania zmian na serwer, wystarczy mi zwykły commit.


Nie trzeba mieć serwera. Można mieć "prywatne" repo w katalogu, może to być katalog sieciowy który będzie zdalnym repozytorium. Można to zrobić na dwa sposoby:

Kod
git clone /path/to/repo.git


lub

Kod
git remote add <nazwa> /path/to/repo.git


Z tego co ja tutaj widzę, po prostu nie do końca wiesz jak używać gita.
Go to the top of the page
+Quote Post
sazian
post 24.08.2017, 16:28:35
Post #6





Grupa: Zarejestrowani
Postów: 1 043
Pomógł: 141
Dołączył: 19.09.2006
Skąd: B-tów

Ostrzeżenie: (0%)
-----


Dał bym sobie rękę uciąć że "core.fileMode false" było ustawione, ba nawet to w pliku konfiguracyjnym sprawdzałem.
I co ?
I bym teraz nie miał ręki sad.gif

@by_ikar wiem że to brzmi dziwnie ale naprawdę tak to wygląda.
Kolega na komputerze obok robi commit wszystkich zmian. Nawet jak teraz w netbeansie klika git->commit to nie pokazuje żadnych zmian.
Teraz ja uruchamiam netbeansa na swoim komputerze i widzę że wszystkie pliki się świecą. Dosłownie. Jak ja wybieram w netbeansie git->commit to mi również pokazuje wszystkie pliki.
Jeśli zrobiłbym tego commita wszystkich plików to dzieje się odwrotnie, ja nie mam nic do zmiany ale kolega znowu widzi zmiany we wszystkich plikach.

Zdaje sobie sprawę że git nie jest tu używany prawidłowo, ale w tym konkretnym przypadku wystarcza mi "notatka" że coś było robione. Ba nawet jak ktoś zapomni zrobić commita i później zrobi jednego zbiorczego z dwóch prac to nie ma tragedii.
Go to the top of the page
+Quote Post
by_ikar
post 25.08.2017, 14:16:21
Post #7





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

Ostrzeżenie: (0%)
-----


Bardziej chodziło mi o to, że brzmi źle, bo tak zostało opisane. Teraz jak to opisujesz, to brzmi zupełnie inaczej, że bezpośrednio edytor nie widzi zmian, a nie terminal/konsola. Zobacz czy takie same problemy występują w terminalu/konsoli. Wystarczy że wpiszesz git status i jeżeli pokaże ci na jednym i drugim komputerze zmiany, ale ci ich nie pokaże w netbeansie, to znaczy że z nim jest problem (może mieć jakieś swoje własne cache czy coś).
Go to the top of the page
+Quote Post
sazian
post 25.08.2017, 15:51:51
Post #8





Grupa: Zarejestrowani
Postów: 1 043
Pomógł: 141
Dołączył: 19.09.2006
Skąd: B-tów

Ostrzeżenie: (0%)
-----


To jeszcze tak w kwestii wyjaśnienia żeby nie było wątpliwości: fileMode pomogło.

Git status pokazywał zawsze to samo co ja widziałem.
Czyli kolega robił commit i status pokazywał wszystko do zmiany - sprawdzałem na moim komputerze przez sambe oraz bezpośrednio na serwerze z poziomu zwykłego usera i roota.
Ja robiłem commit i status pokazywał że nie ma nic do zmiany.

Podejrzewam że mogło to być spowodowane tym że windows coś psuł w uprawnieniach - wszyscy poza mną pracują na windowsie, ja mam debiana bo na tego dosa patrzeć nie mogę wink.gif
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.03.2024 - 13:00