GitHub e repository remoti: il tuo codice nel cloud
Passiamo dal lavoro locale a quello di squadra: capiamo cosa sono i remote, come collegare un repository locale a GitHub e qual è la differenza tra push, pull e fetch — i tre comandi che più spesso creano confusione. Approfondiremo inoltre l'autenticazione tramite chiavi SSH, perché i datori di lavoro si aspettano che tu le configuri da solo.
- Sarai in grado di creare un repository su GitHub, collegarlo al tuo progetto locale e pubblicare le modifiche con il comando push.
- Capirai la differenza tra fetch e pull e saprai scegliere consapevolmente tra i due nel lavoro di squadra.
- Configurerai l'autenticazione SSH con GitHub senza password, proprio come fanno i professionisti.
Phần đầu bài giảng
Perché servono i repository remoti?
- Il repository locale è solo sul tuo computer
- Il repository remoto è un archivio cloud per il team
- Tutti vedono e apportano modifiche in un unico posto
- Sincronizzazione via internet in tempo reale
Immagina di lavorare a un progetto da solo: un repository locale di Git è sufficiente. Ma appena entrano in gioco altre persone, nasce l'esigenza di uno spazio condiviso. Il repository remoto diventa il punto centrale di archiviazione del codice, accessibile a ogni membro del team. È come Google Docs, dove tutte le modifiche si sincronizzano in tempo reale. Vedi i cambiamenti dei colleghi, puoi discutere il codice tramite pull request e lavorare su funzionalità diverse in parallelo. Senza un repository remoto, lo sviluppo di squadra si trasformerebbe in un caos di archivi inviati via email e infinite versioni di file.
Come sono collegati il repository locale e quello remoto
- Origin è il nome predefinito del repository remoto
- Push: invio delle modifiche al server
- Pull: ricezione delle modifiche dal server
- Ogni repository è indipendente e contiene l'intera cronologia
Il repository locale sul tuo computer scambia dati con quello remoto attraverso due comandi chiave: push e pull. Di default, il repository remoto principale si chiama origin. Ma è importante capire che non si tratta di una semplice copia di file. Ogni archivio è indipendente e contiene l'intera cronologia delle modifiche. Quando fai dei commit in locale, rimangono solo sul tuo computer finché non li invii con il comando push. E quando i colleghi aggiornano il codice, lo recuperi tramite pull per sincronizzare il tuo lavoro.
Un repository locale, tanti repository remoti
- Puoi collegare più repository remoti
- Origin è il tuo fork personale su GitHub
- Upstream è il repository originale del progetto
- Sincronizzare le modifiche tra di loro è facile
Il tuo progetto può essere collegato a più repository remoti contemporaneamente. Per esempio, origin è il tuo fork personale su GitHub, mentre upstream è il repository del progetto principale. Questa configurazione ti permette di apportare modifiche alla tua copia, ricevendo facilmente gli aggiornamenti dalla fonte originale. È particolarmente utile quando lavori a progetti open-source, dove devi mantenere aggiornato il tuo fork. Sei tu a decidere quando e quali modifiche prendere da upstream e portare nel tuo origin. Ora che abbiamo capito la logica di lavoro con i repository remoti, è il momento di crearne uno su GitHub — e lo faremo subito.
# Aggiunge un nuovo repository remoto
git remote add upstream https://github.com/original/project.git
# Mostra l'elenco di tutti i repository remoti
git remote -v
# Recupera le modifiche da upstream nel ramo locale
git fetch upstream
git checkout main
git merge upstream/main
# Invia le modifiche al proprio origin
git push origin main
Bài giảng đầy đủ dành cho thuê bao
Còn 30 slide nữa trong phiên bản đầy đủ.
Video, toàn bộ slide, ghi chú, bài kiểm tra, gia sư AI và phỏng vấn sẽ mở sau khi đăng nhập và đăng ký thuê bao.
Đăng nhập hoặc đăng ký Đăng ký thuê baoNội dung bài giảng
- Perché servono i repository remoti?
- Come sono collegati il repository locale e quello remoto
- Un repository locale, tanti repository remoti
- Creare un nuovo repository su GitHub
- README e licenza: il tuo primo commit
- Collegare il repository locale a GitHub
- Cosa significa clonare un repository?
- Due modalità di clonazione: HTTPS e SSH
- Pratica: cloniamo un repository
- Verifichiamo le impostazioni dopo la clonazione
- Perché le password sono scomode per GitHub
- Come funzionano le chiavi SSH
- Creiamo la chiave SSH
- Aggiungiamo la chiave su GitHub
- Inviare codice nel cloud: git push
- Configurare il ramo upstream
- Risolvere i conflitti durante il push
- Git pull: sincronizzazione con il cloud
- Come funziona git pull sotto il cofano
- Problemi tipici con git pull
- Perché git pull può essere pericoloso
- Git fetch: scaricare le modifiche in sicurezza
- Pratica: visualizzare le modifiche con fetch
- Quando usare fetch al posto di pull
- Push nel branch altrui: perché rompe il processo
- Come fare correttamente: crea il tuo branch per le modifiche
- Il disastro silenzioso: quando pull cancella le tue modifiche
- Il comando salvavita: come usare git stash
- GitHub: il tuo armadio cloud per il codice
- Configurare la chiave SSH: il tuo lasciapassare digitale
- Dal fork alla Pull Request: lavorare in team
- Pull request: cos'è e differenza da un semplice push
- Riepilogo e compito
Bài viết liên quan đến bài học này
- Git và GitHub: khác nhau thế nào và liên hệ ra sao
- git fetch và git pull: khác nhau thế nào và nên chọn cái nào
- Lệnh Git: bảng tra cứu với ví dụ dùng hằng ngày
- Kho lưu trữ Git: cách tạo bằng git init và kết nối remote
- git clone: cách sao chép kho lưu trữ từ GitHub và nơi khác
Tất cả bài giảng của khóa học
- Introduzione: Git da zero a sviluppatore fiducioso
- Perché serve Git — e perché senza non ti assumono
- Installazione e configurazione: prepariamo Git al primo avvio
- Primo repository: init, add, commit e la magia dell'indice
- Leggiamo la storia: log, diff, show e navigazione nel passato
- Branch: la realtà parallela del tuo codice
- Annullare gli errori: restore, reset, revert — correttamente e con cautela
- GitHub e repository remoti: il tuo codice nel cloud
- Lavoro di squadra: fork, feature branch e pull request
- Conflitti di unione: niente panico — analizziamo e risolviamo
- Processi Git nei team reali: quale workflow scegliere
- Strumenti avanzati: rebase, stash, cherry-pick e tag
- Progetto finale: simuliamo uno sviluppo di gruppo reale