0Pricing
Frontend Academy · Lezione

Repository remoti: push, pull e clone

Collegare un repository locale a GitHub, inviare i commit al repository remoto, scaricare le modifiche dei collaboratori e clonare repository esistenti.

Repository remoti: push, pull e clone è una lezione Frontend Academy gratuita su CoddyKit. Questa è la lezione 3 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Frontend Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Frontend Academy include 4 lezioni in totale.

Che cos'è un remote?

Un remote è una versione del repository ospitata su Internet (GitHub, GitLab, Bitbucket). Può collaborare con i membri del team inviando i propri commit al remote e recuperando da esso i loro commit.

git clone — Copiare un repository remoto

git clone url crea una copia locale del repository remoto, inclusa tutta la cronologia e tutti i branch. Il remote viene aggiunto automaticamente con il nome origin.

git clone https://github.com/user/repo.git
git clone git@github.com:user/repo.git  # SSH

git remote — Gestire i remote

git remote -v elenca i remote configurati. git remote add name url aggiunge un remote. Per convenzione, il remote principale si chiama origin.

git remote -v
# origin  git@github.com:user/repo.git (fetch)
# origin  git@github.com:user/repo.git (push)

git remote add origin https://github.com/user/repo.git

git push — Inviare commit al remote

git push origin branchname carica i commit locali nel branch remoto. Il primo push di un nuovo branch richiede di impostare il tracciamento del branch upstream con -u.

git push origin main
git push -u origin feature/auth  # set upstream and push
git push                          # push to tracked remote (after -u)

git pull — Ricevere commit dal remote

git pull recupera le modifiche dal branch remoto tracciato e le integra nel branch corrente. Equivale a git fetch + git merge.

git pull            # fetch and merge from tracked upstream
git pull origin main # explicit remote and branch

git fetch — Scaricare senza eseguire il merge

git fetch scarica tutte le modifiche remote senza modificare la directory di lavoro. Lo utilizzi per vedere quali commit hanno eseguito i membri del team prima di decidere come integrarli.

git fetch origin
git log origin/main --oneline  # inspect remote commits
git merge origin/main           # integrate when ready

Configurare le chiavi SSH

GitHub richiede l'autenticazione. HTTPS utilizza nome utente e token. Le chiavi SSH sono più pratiche: generi una coppia di chiavi, aggiunga la chiave pubblica a GitHub e si autentichi automaticamente.

ssh-keygen -t ed25519 -C "your@email.com"
# Public key:
cat ~/.ssh/id_ed25519.pub
# Copy this into GitHub Settings → SSH Keys

Upstream e origin

origin è il fork del repository. upstream è il repository originale. Quando contribuisce a un progetto open source: fork → clone → aggiunta del remote upstream → recupero da upstream per mantenersi aggiornato.

git remote add upstream https://github.com/original/repo.git
git fetch upstream
git merge upstream/main

Force push — Da usare con estrema cautela

git push --force sovrascrive la cronologia del branch remoto. Non esegua mai il force push su main o sui branch condivisi: in questo modo riscriverebbe la cronologia per tutti. È sicuro sui branch personali sottoposti a rebase, prima che una PR venga esaminata.

git pull --rebase

git pull --rebase applica i commit locali sopra i commit recuperati, invece di creare un commit di merge. Produce una cronologia più pulita e lineare. Molti team lo impostano come strategia predefinita per il pull.

git pull --rebase origin main

# Set as default:
git config --global pull.rebase true

.git/config

La configurazione Git locale del repository si trova in .git/config. Contiene gli URL dei remote e i branch tracciati. ~/.gitconfig contiene le impostazioni globali, come nome ed e-mail.

# ~/.gitconfig
[user]
  name = Alice Developer
  email = alice@example.com
[core]
  editor = code --wait

Verifica rapida

Che cosa fa git push -u origin feature/auth?

Riepilogo: repository remoti

git clone copia localmente un repository remoto. git remote gestisce gli URL dei remote. git push invia i commit. git pull recupera ed esegue il merge. git fetch scarica senza eseguire il merge. Utilizzi SSH per un'autenticazione sicura. origin è il Suo remote; upstream è il repository originale nei progetti open source. Esegua il force push solo sui branch personali non ancora esaminati.

Domande Frequenti

La lezione «Repository remoti: push, pull e clone» è gratuita?

Sì — il testo completo di «Repository remoti: push, pull e clone» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Frontend Academy, passa a CoddyKit PRO. Il corso Frontend Academy include 4 lezioni in totale.

Cosa imparerò in «Repository remoti: push, pull e clone»?

Collegare un repository locale a GitHub, inviare i commit al repository remoto, scaricare le modifiche dei collaboratori e clonare repository esistenti. Eserciti Frontend Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Frontend Academy?

Non è richiesta alcuna esperienza precedente. Frontend Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 4.

Quanto tempo richiede la lezione «Repository remoti: push, pull e clone»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Frontend Academy?

Sì. Ogni lezione Frontend Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. git init, add, commit e status
  2. Branching: branch, checkout e merge
  3. Repository remoti: push, pull e clone
  4. Workflow delle pull request su GitHub
← Torna a Frontend Academy