Per costruire applicazioni su iOS è obbligatorio usare un macOS. Alcuni sviluppano su macOS anche per il sistema Android, ma se si vuole sviluppare su due computer diversi è necessario usare un terzo server ssh per sincronizzare i due repository.
Vediamo alcuni comandi utili.
Avviso
Quando su un progetto si usano due repository remoti (uno detto origin
di default e uno secondario) si ottiene spesso questo errore:
(con un tentativo di pull)
Not possibile fast-forward, aborting
(con un tentativo di merge)
Refusing to merge unrelated histories
Quindi si sconsiglia questa pratica quando si desiera sincronizzare un progetto che possiede DUE repository remoti. Oppure potrebbe essere utile mantenere separate le due diverse cartelle nascoste .git.
Preparazione
Si crea prima il repository (vuoto) nel server ssh e si esegue il primo commit (senza file)
mkdir progetto
cd progetto
git init --bare
git commit -am "primo commit"
L’opzione –bare renderà non direttamente accessibili i file contenuti del repository del server.
I file saranno accessibili negli altri due computer, dove si può clonarelo stesso repository (ancora vuoto)
git clone ssh://utente@192.168.9.1/home/utente/progetto
I comandi utili già visti sono
git commit -am "commento"
git pull
git push
A volte sono utili anche questi comandi:
se si dimentica di usare l’opzione --bare
cd /nuova/posizione
git clone ssh://utente@192.168.9.1/home/utente/progetto
se si vuole aggiungere un server remoto (detto origin
)
git remote -v
git remote add origin ssh://utente@192.168.9.1/home/utente/progetto
Se si desidera modificare la cartella del repository remoto
git remote -v
git remote set-url origin ssh://utente@192.168.9.1/home/utente/progetto
Se non funziona git pull
(optando per fetch + merge)
Attenzione al nome diverso (main oppure master)
git branch --all
git checkout main
git fetch origin
git merge origin/main