I want "fast forward my workdir to upstream if it's safe"
- From
Randal L. Schwartz <merlyn@stonehenge.com>
- Date
- May 7, 2009, 21:40 UTC
- Message-ID
- <86prekfv7z.fsf@blue.stonehenge.com>
For the past few years, within any given 12 hour period, at least one person on #git would come up with the use case with which I'm really familiar (having needed it many times myself):
I have a workdir tracking a remote. I may or may not have made local edits... I can't remember. I may or may not have made local commits... I can't remember. But the upstream might now have changed... please update me *safely*.
Seriously, this comes up, a lot. Typically, from a cron job updater, but often just "what can I do to make sure I'm up to date".
So, what I need is a command, likely an option to "git merge" that says "do everything that a git merge would do except abort if it would have been a merge commit". In other words, abort if the workdir is dirty or is not a fast-forward update to the upstream. Bonus if it exits non-zero if something went wrong.
Please don't tell me "use these three commands in this script". I want a *command* I can tell people in #git.
-- Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095 <merlyn@stonehenge.com> <URL:http://www.stonehenge.com/merlyn/> Smalltalk/Perl/Unix consulting, Technical writing, Comedy, etc. etc. See http://methodsandmessages.vox.com/ for Smalltalk and Seaside discussion