Rainer M Krug <rai...@krugs.de> writes: > Hi > > I have a question concerning a bash script to update org (and ess in > the same way but in a different script). > > The script I use to update org looks as follow: > > #!/bin/sh > cd ~/.emacs.d/org-git > > #### > #!/bin/sh > git checkout master > make update > #### > > which works nicely, but I would like to only execute the "make update" > if git updated something - I am sure this is possible, but how? >
It seems to me that the dependencies are not dealt with correctly in the Makefile, so after the git pull (whether that did anything or not), ``make update'' rebuilds everything. Ideally, it should figure out what needs rebuilding and just do that - then you wouldn't need anything more. OTOH, CPU cycles are cheap and rebuilding everything only takes 12 seconds on my laptop, so should we really care? Be that as it may, you can try something like this hack (those are backticks around the git pull - it's under the ESC key in the upper left hand corner on most US keyboards but it may be somewhere else on yours): if [ "`git pull`" == "Already up-to-date" ] then echo "Up to date" else make update fi Nick