git, svn, mercurial

Marius '95

Membru Senior
Sugar daddy
Joined
Nov 13, 2005
Messages
4,837
Git:
Am facut git clone la ceva de pe github. Mi-am salvat propriile modificari intr-un branch nou, local. Master-ul de pe github are acum update-uri. Cum fac sa incorporez update-urile alea in branch-ul meu?

Multumesc.
 

jarod

Super Moderator
Sugar daddy
Joined
Nov 27, 2003
Messages
1,562
Cred că tre să faci un git pull pentru a aduce master-ul la zi și apoi git merge ca să merge-uiești branch-ul tău în master (și să speri că nu apar conflicte :smile:).
 

Marius '95

Membru Senior
Sugar daddy
Joined
Nov 13, 2005
Messages
4,837
OK, am facut pull deja. Dar nu prea vreau sa amestec branch-ul meu cu master-ul. Ma uitam la git rebase. Nu-i mai bun asta?

In orice caz, am conflicte. Imi spune care-s fisierele, dar nu stiu cum ar trebui sa analizez diferentele. E vorba de un fisier changelog pe care eu nu-mi amintesc sa-l fi modificat.
Am incercat git diff <fisier> dar nu m-am lamurit. Nu scrie care varianta este cea locala si care-i cea din master, presupunand ca git diff dupa un rebase neterminat chiar asta arata, nu total alteceva.
 

jarod

Super Moderator
Sugar daddy
Joined
Nov 27, 2003
Messages
1,562
Nu prea am folosit git, dar din cum înțeleg io că funcționează, un workflow comun ar fi ceva de genul: faci clone la repo, faci checkout într-un branch local, faci modificările în branch-ul tău local, iar când ai terminat faci merge înapoi în master-ul tău local. Apoi, dacă vrei poți să faci push înapoi către sursă.

Dacă în timp ce tu faci modificări în branch-ul tău, master-ul remote se schimbă, cred că e recomandat să îți sincronizezi master-ul local cu cel remote (via pull sau fetch?) înainte să faci merge.

Poate ar trebui să explici mai clar ce vrei să obții exact.
 

Marius '95

Membru Senior
Sugar daddy
Joined
Nov 13, 2005
Messages
4,837
Vreau sa am modificarile mele aplicate constant peste ultima versiune de pe github.
 

miahi

Wizzard
Sugar daddy
Joined
Aug 1, 2004
Messages
8,104
Faci rebase, dar nu înseamnă că n-o să ai probleme (conflicte). Dar dacă ai conflicte cu fișiere pe care tu zici că nu le-ai modificat, vezi istoricul tău vs istoricul lor. Poate ai bușit setări de autocrlf și ai modificat toate fișierele.

Ia un tool vizual, că e mai simplu de văzut ce-i acolo decât cu linia de comandă - vezi tree-ul vizual, vezi tot logul, vezi ce fișiere ai modificat etc.
 

Marius '95

Membru Senior
Sugar daddy
Joined
Nov 13, 2005
Messages
4,837
Am facut un rebase. Doua fisiere modificate. Am facut checkout la fisierele din master, apoi git add la cele doua si git rebase --continue. Apoi m-am pierdut. Imi zice ca sunt cu 4 commit-uri inaintea master-ului !?

Care tool vizual e ala? (PS: am un gentoo *foarte* personalizat)
 

Styr

Follower of the old ways
Sugar daddy
Joined
Oct 14, 2003
Messages
1,521
'git log' ar trebui să te lămurească mai bine decât noi care îs alea 4 commits.
 

Thor

Membru Senior
Sugar daddy
Joined
Dec 6, 2004
Messages
1,960
Încearcă `gitk` sau `tig` pentru tool-uri cu interfaţă (grafică sau TUI).
 
Top Bottom