aggiorna git repository con lo script di apple

1

Voglio aggiornare il mio git storage online Bitbucket con script Apple. Questo è il codice che funziona in Terminal, ma non quando eseguo lo script di apple.

cd /Users/mainuser/Desktop/Projects git add -A
git commit -m fromAppleScript
git push

creato in script Apple:

        say "updating backup"
        do shell script "cd /Users/mainuser/Desktop/Projects git add -A"
        do shell script "cd /Users/mainuser/Desktop/Projects git commit -m fromAppleScript"
        do shell script "cd /Users/mainuser/Desktop/Projects git push"

Sono un po 'perplesso sul perché questo codice non funzioni. Puoi aiutarmi con questo problema?

    
posta sanjihan 27.04.2016 - 12:50
fonte

1 risposta

2

Sembra che tu stia utilizzando git come backup del file system. Hai considerato git-annex ?

Apprendimento git

git può essere difficile da imparare e correggere . Prendi in considerazione la padronanza dei passaggi che desideri tramite Terminal.app - con l'aiuto di il Git Book .

Il

supporto di BitBucket offre una vasta gamma di esempi e flussi di lavoro da provare e da cui imparare. Una volta che ti fidi di questo processo, l'automazione tramite AppleScript sarà molto più semplice.

Correzione dello script della shell

Per iniziare, c'è un problema con AppleScript. Lo script passato a script di shell restituirà un errore:

do shell script "cd /Users/mainuser/Desktop/Projects git add -A"

All'interno di queste virgolette stai emettendo due comandi: uno per cambiare directory e il secondo per aggiungere file a git. Questi due comandi devono essere separati da un punto e virgola:

do shell script "cd /Users/mainuser/Desktop/Projects; git add -A"

Un approccio migliore ancora, sarebbe quello di legare i comandi insieme a && . Ciò significa che se il primo comando fallisce, il secondo comando non viene eseguito. Questo approccio si occupa del problema di una directory mancante o rinominata:

do shell script "cd /Users/mainuser/Desktop/Projects && git add -A"

In alternativa, per evitare problemi di directory di lavoro prova a passare il percorso completo ai comandi git :

do shell script "git add -A '/Users/mainuser/Desktop/Projects'"
    
risposta data 27.04.2016 - 15:46
fonte

Leggi altre domande sui tag