Skip to contentSkip to conversation

shell script calling git fails when called from scheduler

DISCUSSION Markus Heller 2 participants 3 messages Jun 15, 2016

lore
Share & tools
lore
#0 lore raw

Hi all,

I have the following batch shell script (org-git-synch.bat):

@ECHO OFF

REM get date and time
for /f "delims=" %%a in ('date/t') do @set mydate=%%a for /f "delims=" %%a in ('time/t') do @set mytime=%%a set fvar=%mydate%%mytime%

REM add all new files
call git add .
call git commit -a -m "Automated commit by org-git-sync.bat on %fvar%"

The script resides in h:/org/; and I have a working git repository in this directory (in h:/org/.git).

I can run the script from the command line no problem, but when I try to run it from the Windoze scheduler, all I get is a cmd window saying:

fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git

I did re-initialize the repository, but that didn't matter, since git status and everything else works fine from the command line. I'm on Win 7 Pro 64 bit SP 1.

Any ideas?

Thanks and Cheers
Markus

#1 lore raw
Quoted 24 lines · Markus Heller

Hi all,

I have the following batch shell script (org-git-synch.bat):

@ECHO OFF

REM get date and time
for /f "delims=" %%a in ('date/t') do @set mydate=%%a for /f "delims=" %%a in ('time/t') do @set mytime=%%a set fvar=%mydate%%mytime%

REM add all new files
call git add .
call git commit -a -m "Automated commit by org-git-sync.bat on %fvar%"

The script resides in h:/org/; and I have a working git repository in this directory (in h:/org/.git).

I can run the script from the command line no problem, but when I try to run it from the Windoze scheduler, all I get is a cmd window saying:

fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git

Quoted 8 lines

I did re-initialize the repository, but that didn't matter, since git status and everything else works fine from the command line. I'm on Win 7 Pro 64 bit SP 1.

Any ideas?

Thanks and Cheers
Markus

At a guess (I dont use the windows scheduler), the working directory of the batch file is not being set to h:/org

I dont know if there is a way to tell the windows scheduler what the working directory should be, so maybe try cd'ing to h:/org at the start of your script?

HTH

Matt

#2 lore raw
Quoted 31 lines · Matt Harrison
Quoted 30 lines · Markus Heller

Hi all,

I have the following batch shell script (org-git-synch.bat):

@ECHO OFF

REM get date and time
for /f "delims=" %%a in ('date/t') do @set mydate=%%a for /f "delims=" %%a in ('time/t') do @set mytime=%%a set fvar=%mydate%%mytime%

REM add all new files
call git add .
call git commit -a -m "Automated commit by org-git-sync.bat on %fvar%"

The script resides in h:/org/; and I have a working git repository in this directory (in h:/org/.git).

I can run the script from the command line no problem, but when I try to run it from the Windoze scheduler, all I get is a cmd window saying:

fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git

I did re-initialize the repository, but that didn't matter, since git status and everything else works fine from the command line. I'm on Win 7 Pro 64 bit SP 1.

Any ideas?

Quoted 8 lines
Quoted 2 lines

Thanks and Cheers
Markus

At a guess (I dont use the windows scheduler), the working directory of the batch file is not being set to h:/org

I dont know if there is a way to tell the windows scheduler what the working directory should be, so maybe try cd'ing to h:/org at the start of your script?

Thanks Matt,

this was the problem. U can specify the directory where the script should be run in the scheduler.

Cheers
Markus