Skip to content

Cum să gestionezi branch-urile în Git — Ghid complet

DodaTech Updated 2025-01-15 3 min read

In this tutorial, you'll learn about Cum să gestionezi branch. We cover key concepts, practical examples, and best practices.

În acest ghid vei învăța cum să creezi, ștergi și redenumești branch-uri în Git pentru a organiza eficient dezvoltarea proiectului tău.

The Problem

Lucrul direct pe branch-ul principal duce la haos și conflicte. Branch-urile bine gestionate permit dezvoltarea paralelă, testarea separată a feature-urilor și integrarea controlată a modificărilor.

The Wrong Way

# Lucrezi direct pe main fără branch-uri
git checkout main
# modifici codul direct...

Lucrul direct pe main împiedică dezvoltarea paralelă și face rollback-ul aproape imposibil fără a afecta și alte schimbări.

The Right Way

# Creează un branch nou
git branch feature-login

# Creează și treci pe branch
git checkout -b feature-login

# Redenumește branch-ul curent
git branch -m feature-login feature-auth

# Șterge un branch
git branch -d feature-auth

Step-by-Step Fix

1. Creează un branch nou

git branch feature-search

Branch-ul se creează din commit-ul curent, dar rămâi pe același branch.

2. Creează și comută pe branch

git checkout -b feature-search

Output:

Switched to a new branch 'feature-search'

Alternativa modernă cu git switch:

git switch -c feature-search

3. Redenumește un branch

Pentru branch-ul curent:

git branch -m feature-search search-engine

Pentru un branch specific:

git branch -m feature-old feature-new

4. Șterge un branch local

# Șterge doar dacă a fost fuzionat
git branch -d feature-search

# Forțează ștergerea (chiar dacă nu este fuzionat)
git branch -D feature-search

5. Șterge un branch remote

git push origin --delete feature-search

6. Listează branch-urile

# Branch-uri locale
git branch

# Toate branch-urile (inclusiv remote)
git branch -a

# Branch-uri fuzionate în branch-ul curent
git branch --merged

Output:

* main
  feature-search
  remotes/origin/feature-search

Prevention Tips

  • Folosește convenții de numire: feature/, bugfix/, hotfix/, release/
  • Șterge branch-urile după fuzionare pentru a păstra repository-ul curat
  • Nu redenumi branch-uri publice fără să anunți echipa
  • Folosește git branch --merged pentru a identifica branch-urile care pot fi șterse
  • Protejează branch-urile principale pe GitHub/GitLab

Common Mistakes

  1. Ștergerea branch-ului curent — trebuie să comuți pe alt branch înainte de ștergere
  2. Confuzia între -d și -D-d refuză ștergerea dacă branch-ul nu este fuzionat
  3. Redenumirea fără actualizarea remote-ului — după git branch -m, trebuie să faci push cu --delete pe cel vechi
  4. Crearea de branch-uri cu nume duplicate — Git permite acest lucru, dar creează confuzie

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 feature-navbar, adaugă un fișier, fă commit, redenumește branch-ul în feature-header, apoi șterge-l după ce verifici istoricul.

FAQ

### Care este diferența dintre git branch -d și git branch -D?

git branch -d șterge doar branch-urile care au fost complet fuzionate în branch-ul curent. git branch -D forțează ștergerea indiferent de starea de fuzionare.

Cum redenumesc un branch la distanță?

Nu poți redenumi direct un branch remote. Trebuie să redenumești branch-ul local, să ștergi branch-ul remote vechi și să împingi branch-ul nou: git push origin --delete vechi && git push origin -u nou.

Ce înseamnă git branch -a?

git branch -a listează toate branch-urile — atât locale cât și remote. Branch-urile remote sunt prefixate cu remotes/origin/.

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