Branches
Scaricare un branch remoto in locale
git checkout -b <local-branch> origin/<remote-branch>
Clonare un repo da un branch specifico
git clone --branch <branchname> <remote-repo-url>
oppure
git clone -b <branchname> <remote-repo-url>
Rebase
Configurazione
git config --global pull.rebase true
Suddividere un commit precedente in più commit
git rebase -i <commit hash>
Sostituisci pick con edit al commit interessato
git reset HEAD~
Aggiungi i file, o le porzioni di codice interessato, allo stage e committa i nuovi commit.
Concludi con:
git rebase --continue
Trovare dove si è rotta l'app
git bisect
se da questo errore: "fatal: invalid reference:" runnare: "rm .git/BISECT_*"
Configurazioni
Mostrare le configurazioni
git config --list
e dove sono state definite (tre livelli: locale, nel repository, globale: per utente, sistema: per tutti gli utenti del sistema)
git config --list --show-origin
Configurare la propria identità
git config --global user.name "Nome Cognome"
git config --global user.email "nome.cognome@esempio.it"
lo stesso comando lanciato senza --global all'interno di un repository configurerà uno specifico utente solo per quel repository
Configurare il nome del branch principale
git config --global init.defaultBranch main
Cambiare la data di un commit
GIT_COMMITTER_DATE="Wed Sep 9 22:00 2020 +0530" git commit --amend --date="Wed Sep 9 22:00 2020 +0530"


