Condividi tramite


Condividere il codice usando Git

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

Condividere il codice con altri utenti in Azure DevOps quando si usa un repository Git.

Prerequisiti

Categoria Requisiti
di accesso a Project membro del progetto.
Strumento da riga di comando Git Uno degli strumenti da riga di comando Git seguenti:
- Git per Windows e Git Credential Manager.
- Git per macOS o Linux. Per macOS e Linux, è consigliabile configurare l'autenticazione SSH.

Clonare il repository sul computer

Per usare un repository Git, clonarlo nel computer. Questa azione crea una copia locale completa del repository. Il codice potrebbe trovarsi in una delle diverse posizioni.

  1. Completare il passaggio seguente applicabile allo scenario:

  2. Dal Web browser aprire il progetto team per l'organizzazione e selezionare Repos Files (File repository>).

    Screenshot del progetto con Repos e File evidenziati.

  3. Selezionare Clona.

    Screenshot che mostra il pulsante clone evidenziato nei file repos.

  4. Copiare l'URL.

    Screenshot che mostra l'icona di copia evidenziata per la copia dell'URL.

  5. Aprire la finestra di comando Git (Git Bash in Git per Windows). Passare alla cartella in cui si vuole che il codice del repository archiviato nel computer ed eseguire git clone, seguito dal percorso copiato dall'URL clone nel passaggio precedente. Vedere l'esempio seguente:

    git clone https://FabrikamFiber01@dev.azure.com/FabrikamFiber01/FabrikamFiber01-01/_git/FabrikamFiber01-01
    

    Git scarica una copia del codice, inclusi tutti i commit e i rami dal repository in una nuova cartella con cui lavorare.

  6. Passare alla directory nel repository clonato.

    cd fabrikam-web
    

    Mantenere aperta questa finestra di comando per funzionare in un ramo.

2. Lavorare in una filiale

I rami Git isolano le modifiche da altre operazioni nel progetto. Usare il flusso di lavoro Git, che usa un nuovo ramo per ogni funzionalità o correzione su cui si lavora. Per gli esempi in questo articolo, viene usato il ramo users/jamal/feature1 .

  1. Creare un ramo con il branch comando .

    git branch users/jamal/feature1
    

    Questo comando crea un riferimento in Git per il nuovo ramo. Crea anche un puntatore al commit padre in modo che Git possa mantenere una cronologia delle modifiche quando si aggiungono commit al ramo.

    Se stai utilizzando un repository clonato in precedenza, assicurati di aver effettuato il checkout del ramo corretto (git checkout main) e che sia aggiornato (git pull origin main) prima di creare il nuovo ramo.

  2. Usare checkout per passare a tale ramo.

    git checkout users/jamal/feature1
    

    Git modifica i file nel computer in modo che corrispondano al commit più recente nel ramo estratto.

    Suggerimento

    Quando si crea un ramo dalla riga di comando, si basa il ramo sul ramo attualmente in uso. Quando si clona il repository, si estrae il branch predefinito (tipicamente main). Poiché hai clonato, la tua copia locale di main ha le modifiche più recenti.

    git checkout main
    git pull origin main
    git branch users/jamal/feature1
    git checkout users/jamal/feature1
    

    È possibile sostituire i primi tre comandi dell'esempio precedente con il comando seguente, che crea un nuovo ramo denominato users/jamal/feature1 basato sul ramo più recente main .

    git pull origin main:users/jamal/feature1
    

    Tornare alla finestra Git Bash usata nella sezione precedente. Eseguire i comandi seguenti per creare ed eseguire il check-out di un nuovo ramo basato sul ramo principale.

    git pull origin main:users/jamal/feature1
    git checkout feature1
    

3. Usare il codice

Nei passaggi seguenti si apporta una modifica ai file nel computer, si esegue il commit delle modifiche in locale e quindi si esegue il push del commit nel repository archiviato nel server.

  1. Vai alla cartella sul tuo computer dove hai clonato il repo. Aprire il file nell'editor README.md preferito e apportare alcune modifiche. Salvare e chiudere il file.

  2. Nella finestra di comando Git passare alla fabrikam-web directory immettendo il comando seguente:

    cd fabrikam-web
    
  3. Eseguire il commit delle modifiche immettendo i comandi seguenti nella finestra di comando git:

    git add .
    git commit -m "My first commit"
    

    Il git add . comando esegue il commit di tutti i file nuovi o modificati e git commit -m crea un commit con il messaggio di commit specificato.

    Controllare il ramo su cui si sta lavorando prima del commit, in modo da non eseguire il commit delle modifiche nel ramo errato. Git aggiunge sempre nuovi commit al ramo locale corrente.

  4. Eseguire il push delle modifiche nel repository Git nel server. Immettere il comando seguente nella finestra di comando git:

    git push origin users/jamal/feature1
    

Il codice è stato condiviso nel repository remoto, in un ramo denominato users/jamal/feature1. Per unire il codice dal ramo di lavoro al main ramo, usare una richiesta pull.

4. Unire le modifiche con una pull request

Le richieste pull combinano la revisione e il merge del codice in un unico processo di collaborazione. Al termine della correzione di un bug o dell'aggiunta di una nuova funzionalità in un ramo, creare una nuova richiesta pull. Aggiungere i membri del team alla richiesta pull in modo da poter esaminare e votare le modifiche. Usare le richieste pull per esaminare i lavori in corso e ricevere tempestivamente il feedback sulle modifiche. Non esiste alcun impegno a unire le modifiche perché è possibile abbandonare la richiesta pull in qualsiasi momento.

L'esempio seguente illustra i passaggi di base per la creazione e il completamento di una richiesta pull.

  1. Aprire il progetto team per l'organizzazione nel Web browser e selezionare Repos Files (File repository>). Se il browser è stato mantenuto aperto dopo aver ottenuto l'URL clone, è sufficiente tornare a esso.

  2. Selezionare Crea una richiesta pull nell'angolo superiore destro della finestra File . Se non viene visualizzato un messaggio simile a Utenti/jamal/feature1 aggiornati subito, aggiornare il browser.

    Crea una richiesta pull

    Le nuove richieste pull sono configurate per unire il ramo nel ramo predefinito, che in questo esempio è main. Il titolo e la descrizione sono prepopolati con il messaggio di commit.

    Nuova richiesta pull

    È possibile aggiungere revisori e collegare elementi di lavoro alla richiesta pull.

    È possibile esaminare i file inclusi nella richiesta pull nella parte inferiore della finestra Nuova richiesta pull.

    File nella richiesta pull

  3. Seleziona Crea.

    Visualizzare i dettagli della richiesta pull dalla scheda Panoramica . È anche possibile visualizzare i file, gli aggiornamenti e i commit modificati nella richiesta pull dalle altre schede.

  4. Selezionare Completa per avviare il processo di completamento della richiesta pull.

    Richiesta pull

  5. Selezionare Completa unione per completare la richiesta pull e unire il codice nel main ramo.

    Completare la richiesta pull

    Nota

    Questo esempio illustra i passaggi di base della creazione e del completamento di una richiesta pull. Per altre informazioni, vedere Creare, visualizzare e gestire le richieste pull.

Le modifiche vengono ora unite nel main ramo e il users/jamal/feature1 ramo viene eliminato nel repository remoto.

Visualizza storico

  1. Tornare al portale Web e selezionare Cronologia dalla tabella codici per visualizzare il nuovo commit.

    Screenshot del portale Web con Cronologia evidenziata

  2. Passare alla scheda File e selezionare il file README per visualizzare le modifiche.

    Screenshot del file README

Eseguire la pulizia

Per eliminare la copia locale del ramo, tornare al prompt dei comandi di Git Bash ed eseguire il comando seguente:

git checkout main
git pull origin main
git branch -d users/jamal/feature1

Questa azione completa le attività seguenti:

  • Il git checkout main comando consente di passare al main ramo .
  • Il git pull origin main comando esegue il pull della versione più recente del codice nel ramo principale, incluse le modifiche e il fatto che users/jamal/feature1 è stato unito.
  • Il git branch -d users/jamal/feature1 comando elimina la copia locale di tale ramo.

Passaggi successivi