Re: How can I tell if a file has been updated upstream?
- From
- Timur Tabi <timur@freescale.com>
- Date
- Feb 5, 2010, 16:57 UTC
- Message-ID
- <ed82fe3e1002050857h300de908n5f3e4497c9ec2460@mail.gmail.com>
- In-Reply-To
- <7vk4urbp9u.fsf@alter.siamese.dyndns.org>
On Fri, Feb 5, 2010 at 10:50 AM, Junio C Hamano <gitster@pobox.com> wrote:
> So whenever I run your script it calls home, spend a roundtrip time, and > nags me to update?
Yes. Fortunately, it's all on an internal network, so the overhead is low.
> I don't want to be working with you unless I can go > without running that script less often than once a week ;-)
That's about how often most people will run the script.
> You need to teach it how to call home. How do your users "clone"?
git clone git://....
Only I have ssh access to my repository.
> Also how do they run the script? Directly out of the > repository work tree, or is there a "make install" step involved?
Directly out of the repository. It's just a Python script.
Show 5 quoted lines
> If your users are running from the work tree copy unmodified, then you > would need to look at sys.argv[0] to find out where it is, use that to > find the repository, and using its .git/config learn how the user pulls > from your repository (i.e. git config remote.origin.url), and at the same > time which version it is (i.e. git rev-parse HEAD).
Ok.
> At runtime, you would run "ls-remote HEAD" and compare with the version > you are running. It may be stale, or it may not be.
Ok.
> How big is the script? It _might_ be faster to distribute a launcher that > downloads the real script every time it runs and runs that fresh copy that > is guaranteed to be the latest than doing all the hassle of the above.
I don't want to force an update, and I don't want to have to email everyone whenever there is an update. This seems to be the least intrusive approach.
-- Timur Tabi Linux kernel developer at Freescale