Cum să trimiți modificări la remote cu git push — Ghid complet
In this tutorial, you'll learn about Cum să trimiți modificări la remote cu git push. We cover key concepts, practical examples, and best practices.
În acest ghid vei învăța cum să folosești git push cu opțiunile -u, --force, --tags și --force-with-lease pentru a trimite modificări la repository-ul remote în siguranță.
The Problem
Trimiterea modificărilor la remote pare simplă, dar poți întâmpina erori de respingere, pierderi de istoric sau probleme de colaborare dacă nu folosești opțiunile corecte.
The Wrong Way
# Force push periculos
git push --force
# Rescrie istoricul colegilor fără avertisment
git push --force poate șterge commit-urile colegilor tăi și cauzează haos în echipă.
The Right Way
# Prima dată când împingi un branch nou
git push -u origin feature
# Push normal
git push
# Force push sigur
git push --force-with-lease
# Trimite și tag-urile
git push --tags
Step-by-Step Fix
1. Prima dată: setează upstream (-u)
git push -u origin feature
Output:
Total 3 (delta 0), reused 0 (delta 0)
To https://github.com/user/repo.git
* [new branch] feature -> feature
Branch 'feature' set up to track remote branch 'feature' from 'origin'.
Opțiunea -u setează upstream-ul, permițând git push simplu după aceea.
2. Push normal (după -u)
git push
3. Force push sigur (--force-with-lease)
Respinge push-ul dacă remote-ul s-a schimbat de la ultima ta fetch:
git push --force-with-lease
4. Push forțat (--force)
Folosește doar când ești absolut sigur:
git push --force
5. Trimite tag-uri
# Toate tag-urile
git push --tags
# Un tag specific
git push origin v1.0.0
Output:
* [new tag] v1.0.0 -> v1.0.0
6. Șterge un branch remote
git push origin --delete feature-vechi
7. Push cu setări avansate
# Doar branch-ul curent
git push origin HEAD
# Toate branch-urile
git push --all
# Verificare înainte de push (dry run)
git push --dry-run
Prevention Tips
- Setează upstream o singură dată cu
-u - Preferă
--force-with-leaseîn loc de--force - Verifică diferențele înainte de push:
git diff --stat main origin/main - Folosește
git push --dry-runpentru a testa înainte - Protejează branch-urile principale pe GitHub/GitLab
Common Mistakes
- Push fără a face pull înainte — duce la erori de non-fast-forward
- Force push pe branch-uri comune — șterge munca colegilor
- Uitarea lui
--tags— tag-urile nu sunt incluse automat în push - Confuzia între
-uși--set-upstream— sunt același lucru
Aceste greșeli apar frecvent în lucrul cu Git. Contribuitorii DodaTech le-au identificat prin analiza proiectelor open-source și a sistemelor de producție.
Practice Exercise
Exercițiu: Creează un branch nou, fă un commit, trimite-l cu git push -u origin, apoi mai adaugă un commit și folosește git push --dry-run înainte de push-ul real.
FAQ
Construit de dezvoltatorii Doda Browser, DodaZIP și Durga Antivirus Pro. Uneltele DodaTech se integrează perfect cu Git pentru productivitate și securitate sporite.
Built by the developers of DodaTech
Doda Browser, DodaZIP & Durga Antivirus Pro