Saya memiliki alur kerja Automator dan salah satu tindakannya adalah mengkloning repositori. Berikut kode untuk tindakan 'Jalankan Shell Script'. Perintah dijalankan dalam Bash shell /bin/bash
jika itu penting:
SOURCEDIR="${3/\/Volumes/}"
cd "$2"
REPOURL="bob@somedomain.com:$SOURCEDIR"
WORKINGDIR="$1"
# Capture any errors with cloning process in log file
git clone "$REPOURL" "$WORKINGDIR" &> ./log.txt
// For debugging
echo "exit code: $?"
echo "PPID: $PPID"
open .
Sekarang Aplikasi Automator berjalan dengan baik di mesin saya. Path ke git di komputer saya (A Macbook Pro) adalah: /usr/bin/git
(Saya yakin saya menginstal git di komputer saya melalui Xcode)
Tetapi pada mesin rekan kerja saya (Juga Mac Pro) Aplikasi Automator gagal. Bahkan, output dari file log.txt mengatakan:bash: git: command not found
Sekarang di mesin rekan kerja saya jalur untuk git adalah:, usr/local/git/bin
yang, ya, berbeda karena dia menginstal git melalui Pemasang Google Git untuk Mac OS X, tapi saya tidak berpikir itu penting karena dalam skrip perintah git bukan path absolut ke perintah dan lebih jauh rekan kerja saya dapat menjalankan git secara normal dari skrip Bash tetapi ketika dipanggil langsung dari Terminal.
Jadi apa yang menyebabkannya? Mengapa alur kerja automator bekerja untuk saya tetapi tidak untuk rekan kerja saya?
Pasti ada sesuatu yang mendasar tentang Bash atau Unix yang saya tidak mengerti di sini tapi saya bingung.