git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: checking action of git-pull

From
Junio C Hamano <gitster@pobox.com>
Date
Dec 7, 2008, 10:51 UTC
Message-ID
<7vprk4cl7i.fsf@gitster.siamese.dyndns.org>
In-Reply-To
<dac45060812070023h7f6a6c86ve2e4ba9f1773f03f@mail.gmail.com>
"Mark Ryden" <markryde@gmail.com> writes:
Show 18 quoted lines
> Hello,
>   I am working against a git repository which is updated at non regular
> intervals; sometimes it takes a day and sometimes a week or two.
>
> I have a script in crontab which runs daily which tries "git pull" of
> this repository.
>
> I want write a bash script which echoes yhe  result of this git pull
> to a log file in such
> a way that in case that any files were pulled, a short message
> saying "files were pulled at date ddmmyyyy" will be added to a log file.
> In case that there there were no changes, a message saying
> "Already up-to-date (ddmmyyyy) will be added to a log file.
>
> How can it be done ?
> can I test somehow the return value of git pull in a bash script for
> these two different
> cases?

You know that a no-op pull does not update HEAD and a successful pull does. So your script would do something like:

	#!/bin/sh
        original_head=$(git rev-parse HEAD) || exit
        git pull origin || exit
        updated_head=$(git rev-parse HEAD) || exit
        if test "$updated_head" = "$original_head"
        then
        	echo Upstream is idling
	else
        	echo These new commits were brought in
                git shortlog $original_head..$updated_head
	fi
Previous: Mark Ryden
Message 2 of 2 in “checking action of git-pull”
  1. Mark RydenDec 7, 2008
  2. Junio C HamanoDec 7, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.