Crea un commit in AWS CodeCommit - AWS CodeCommit

AWS CodeCommit non è più disponibile per i nuovi clienti. I clienti esistenti di AWS CodeCommit possono continuare a utilizzare il servizio normalmente. Scopri di più»

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Crea un commit in AWS CodeCommit

Quando si crea il primo commit per un nuovo repository, si utilizza il comando AWS CLI and. put-file Questo crea il primo commit e consente di creare e specificare il ramo predefinito per il nuovo repository. Puoi usare Git o the AWS CLI per creare un commit in un CodeCommit repository. Se il repository locale è connesso a un CodeCommit repository, usi Git per inviare il commit dal repository locale al repository. CodeCommit Per creare un commit direttamente nella CodeCommit console, vedi e. Creare o aggiungere un file a unAWS CodeCommitmagazzino Modificare il contenuto di un file in unAWS CodeCommit repository

Nota

Come best practice, ti consigliamo di utilizzare le ultime versioni supportate di AWS CLI, Git e altri software. Se utilizzi il AWS CLI, assicurati che sia installata una versione recente per assicurarti di utilizzare una versione che contenga il create-commit comando.

Crea il primo commit per un repository utilizzando il AWS CLI

È possibile utilizzare il AWS CLI put-file comando and per creare il primo commit per un repository. Using put-file crea un primo commit che aggiunge un file al repository vuoto e crea un ramo con il nome specificato. Designa il nuovo ramo come ramo predefinito per il repository.

Nota

Per utilizzare AWS CLI i comandi con CodeCommit, installa il. AWS CLI Per ulteriori informazioni, consulta Guida di riferimento alla riga di comando.

Per creare il primo commit per un repository utilizzando il AWS CLI

  1. Sul tuo computer locale, crea il file che desideri aggiungere come primo file al CodeCommit repository. Una pratica comune consiste nel creare un file README.md markdown che spieghi lo scopo di questo repository agli altri utenti del repository. Se includi un README.md file, il contenuto del file viene visualizzato automaticamente nella parte inferiore della pagina dei codici relativa al repository nella console. CodeCommit

  2. Dal terminale o dalla riga di comando, eseguire il comando put-file, specificando:

    • Il nome del repository in cui desideri aggiungere il primo file.

    • Il nome del ramo che desideri creare come ramo predefinito.

    • Il percorso locale del file. La sintassi utilizzata per questo percorso varia a seconda del sistema operativo locale.

    • Il nome del file da aggiungere, incluso il percorso in cui il file aggiornato è archiviato nel repository.

    • Il nome utente e l'e-mail che desideri associare a questo file.

    • Un messaggio di commit che spiega perché è stato aggiunto il file.

    Il nome utente, l'indirizzo e-mail e il messaggio di commit sono facoltativi, ma possono aiutare gli altri utenti a sapere chi ha apportato la modifica e perché. Se non fornisci un nome utente, per CodeCommit impostazione predefinita utilizza il tuo nome IAM utente o una derivazione del login della console come nome dell'autore.

    Ad esempio, per aggiungere un file denominato README.md con ad esempio il contenuto di un file codificato in base 6 in un repository denominato MyDemoRepo a un ramo denominato development:

    aws codecommit put-file --repository-name MyDemoRepo --branch-name development --file-path README.md --file-content "EXAMPLE0123456789example0123456789EXAMPLE1" --name "Mary Major" --email "mary_major@example.com" --commit-message "I added a quick readme for our new team repository."

    Se il comando viene eseguito correttamente, verrà visualizzato un output simile al seguente:

    { "commitId": "724caa36EXAMPLE", "blobId": "a8a94062EXAMPLE", "treeId": "08b2fc73EXAMPLE" }

Crea un commit usando un client Git

Puoi creare commit usando un client Git installato sul tuo computer locale e poi inviarli al tuo CodeCommit repository.

  1. Completare i prerequisiti, tra cui Configurazione .

    Importante

    Se non è stata completata la configurazione, non è possibile collegarsi o eseguire il commit nel repository usando Git.

  2. Assicurarsi che un commit sia stato creato nel ramo corretto. Per consultare un elenco di rami disponibili e scoprire quale ramo è attualmente impostato per l'utilizzo, eseguire git branch. Vengono visualizzati tutti i rami. Viene visualizzato un asterisco (*) accanto al ramo corrente. Per passare a un altro ramo, eseguire git checkout branch-name. Se questo è il tuo primo commit, esegui il git config comando per configurare il tuo client Git per creare un ramo iniziale con il nome che vuoi usare per quel ramo. Ad esempio, se vuoi che il tuo ramo predefinito abbia lo stesso nome development:

    git config --local init.defaultBranch development
    Suggerimento

    Questo comando è disponibile solo in Git v.2.28 e versioni successive.

    Puoi anche eseguire questo comando per impostare il nome del ramo predefinito su tutti development i repository appena creati:

    git config --global init.defaultBranch development
  3. Apportare una modifica al ramo (ad esempio aggiungere, modificare o eliminare un file).

    Ad esempio, nel repository locale, create un file denominato bird.txt con il seguente testo:

    bird.txt -------- Birds (class Aves or clade Avialae) are feathered, winged, two-legged, warm-blooded, egg-laying vertebrates.
  4. Eseguire git status, che indica che bird.txt non è ancora stato incluso in alcun commit in sospeso:

    ... Untracked files: (use "git add <file>..." to include in what will be committed) bird.txt
  5. Eseguire git add bird.txt per includere il nuovo file nel commit in sospeso.

  6. Se si esegue di nuovo git status, viene visualizzato un output simile al seguente. Indica che bird.txt fa ora parte del commit in sospeso o è nella gestione temporanea del commit:

    ... Changes to be committed: (use "git reset HEAD <file>..." to unstage) new file: bird.txt
  7. Per finalizzare il commit, eseguire git commit con l'opzione -m (ad esempio git commit -m "Adding bird.txt to the repository."). L'opzione -m crea il messaggio di commit.

  8. Se si esegue di nuovo git status, viene visualizzato un output simile al seguente. Indica che il commit è pronto per essere inviato dal repository locale al repository: CodeCommit

    ... nothing to commit, working directory clean
  9. Prima di inviare il commit finalizzato dal repository locale al CodeCommit repository, puoi vedere cosa stai inviando eseguendo, where git diff --stat remote-name/branch-name remote-name è il soprannome che il repository locale usa per il repository e CodeCommit branch-name è il nome del ramo da confrontare.

    Suggerimento

    Per ottenere il nome alternativo, eseguire git remote. Per ottenere un elenco di nomi di rami, eseguire git branch. Viene visualizzato un asterisco (*) accanto al ramo corrente. È inoltre possibile eseguire git status per ottenere il nome del ramo corrente.

    Nota

    Se hai clonato il repository, dal punto di vista del repository locale, remote-name non è il nome del repository. CodeCommit Quando cloni un repository, remote-name è impostato automaticamente su. origin

    Ad esempio, git diff --stat origin/main restituisce un output simile al seguente:

    bird.txt | 1 + 1 file changed, 1 insertion(+)

    L'output presuppone che tu abbia già collegato il repository locale al CodeCommit repository. Per istruzioni, consultare Connessione a un repository.

  10. Quando sei pronto per inviare il commit dal repository locale al CodeCommit repository, esegui, where git push remote-name branch-name remote-name è il soprannome che il repository locale usa per il repository e CodeCommit branch-name è il nome del ramo da inviare al repository. CodeCommit

    Ad esempio, l'esecuzione di git push origin main restituisce un output simile al seguente:

    In HTTPS:

    Counting objects: 7, done. Delta compression using up to 4 threads. Compressing objects: 100% (4/4), done. Writing objects: 100% (5/5), 516 bytes | 0 bytes/s, done. Total 5 (delta 2), reused 0 (delta 0) remote: To https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo b9e7aa6..3dbf4dd main -> main

    In SSH:

    Counting objects: 7, done. Delta compression using up to 4 threads. Compressing objects: 100% (4/4), done. Writing objects: 100% (5/5), 516 bytes | 0 bytes/s, done. Total 5 (delta 2), reused 0 (delta 0) remote: To ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo b9e7aa6..3dbf4dd main -> main
    Suggerimento

    Se si aggiunge l'opzione -u a git push (ad esempio git push -u origin main), è necessario solo eseguire git push in futuro per impostare le informazioni di registrazione upstream. Per ottenere le informazioni di registrazione upstream, eseguire git remote show remote-name (ad esempio, git remote show origin).

Per altre opzioni, consulta la documentazione di Git.

Crea un commit usando il AWS CLI

È possibile utilizzare il AWS CLI create-commit comando and per creare un commit per un repository sulla punta di un ramo specificato. Puoi anche creare un commit di unione senza riferimenti per rappresentare i risultati dell'unione di due specificatori di commit. Per ulteriori informazioni, consulta Creazione di un commit senza riferimenti.

Nota

Per utilizzare AWS CLI i comandi con CodeCommit, installa il AWS CLI. Per ulteriori informazioni, consulta Guida di riferimento alla riga di comando.

Per creare un commit
  1. Sul computer locale, apporta le modifiche che desideri vengano salvate nel CodeCommit repository.

  2. Dal terminale o dalla riga di comando, eseguire il comando create-commit, specificando:

    • Il repository in cui si desidera eseguire il commit delle modifiche.

    • Il ramo in cui si desidera eseguire il commit delle modifiche.

    • L'ID commit completo dell'ultimo commit effettuato al ramo, noto anche come commit di estremità o testa o l'ID commit dell'elemento padre.

    • Se mantenere cartelle vuote se le modifiche apportate eliminano il contenuto di queste cartelle. Questo valore è false per impostazione predefinita.

    • Le informazioni sui file che si desidera aggiungere, modificare o eliminare.

    • Il nome utente e l'indirizzo e-mail che si desidera associare a queste modifiche.

    • Un messaggio di commit che illustra perché sono state apportate queste modifiche.

    Il nome utente, l'indirizzo e-mail e il messaggio di commit sono facoltativi, ma consentono agli altri utenti di sapere chi ha apportato le modifiche e il motivo. Se non fornite un nome utente, per CodeCommit impostazione predefinita utilizzate il vostro nome IAM utente o una derivazione del login della console come nome dell'autore.

    Ad esempio, per creare un commit per un repository che aggiunge un README.md file a un repository denominato MyDemoRepo nel main succursale. Il contenuto del file è in Base64 e recita «Benvenuto nel repository del nostro team!» :

    aws codecommit create-commit --repository-name MyDemoRepo --branch-name main --parent-commit-id 4c925148EXAMPLE --put-files "filePath=README.md,fileContent=V2VsY29tZSB0byBvdXIgdGVhbSByZXBvc2l0b3J5IQo="
    Suggerimento

    Per ottenere l'ID di commit principale, esegui il comando get-branch.

    Se il comando viene eseguito correttamente, verrà visualizzato un output simile al seguente:

    { "commitId": "4df8b524-EXAMPLE", "treeId": "55b57003-EXAMPLE", "filesAdded": [ { "blobId": "5e1c309dEXAMPLE", "absolutePath": "meeting.md", "fileMode": "NORMAL" } ], "filesDeleted": [], "filesUpdated": [] }

    Per creare un commit che apporti modifiche ai file denominati file1.py e file2.txt, rinomina un file da picture.png in image1.png e lo sposta da una directory denominata pictures in una directory denominata, imagesed elimina un file denominato ExampleSolution.py in un repository denominato MyDemoRepo su un ramo denominato MyFeatureBranch il cui commit più recente ha un ID di 4c925148EXAMPLE:

    aws codecommit create-commit --repository-name MyDemoRepo --branch-name MyFeatureBranch --parent-commit-id 4c925148EXAMPLE --author-name "Saanvi Sarkar" --email "saanvi_sarkar@example.com" --commit-message "I'm creating this commit to update a variable name in a number of files." --keep-empty-folders false --put-files '{"filePath": "file1.py", "fileMode": "EXECUTABLE", "fileContent": "bucket_name = sys.argv[1] region = sys.argv[2]"}' '{"filePath": "file2.txt", "fileMode": "NORMAL", "fileContent": "//Adding a comment to explain the variable changes in file1.py"}' '{"filePath": "images/image1.png", "fileMode": "NORMAL", "sourceFile": {"filePath": "pictures/picture.png", "isMove": true}}' --delete-files filePath="ExampleSolution.py"
    Nota

    La sintassi del --put-files segmento varia a seconda del sistema operativo. L'esempio precedente è ottimizzato per utenti Linux, macOS o Unix e utenti Windows con un emulatore Bash. Gli utenti di Windows sulla riga di comando o in Powershell devono utilizzare una sintassi appropriata per tali sistemi.

    Se il comando viene eseguito correttamente, verrà visualizzato un output simile al seguente:

    { "commitId": "317f8570EXAMPLE", "treeId": "347a3408EXAMPLE", "filesAdded": [ { "absolutePath": "images/image1.png", "blobId": "d68ba6ccEXAMPLE", "fileMode": "NORMAL" } ], "filesUpdated": [ { "absolutePath": "file1.py", "blobId": "0a4d55a8EXAMPLE", "fileMode": "EXECUTABLE" }, { "absolutePath": "file2.txt", "blobId": "915766bbEXAMPLE", "fileMode": "NORMAL" } ], "filesDeleted": [ { "absolutePath": "ExampleSolution.py", "blobId": "4f9cebe6aEXAMPLE", "fileMode": "EXECUTABLE" }, { "absolutePath": "pictures/picture.png", "blobId": "fb12a539EXAMPLE", "fileMode": "NORMAL" } ] }