Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Simple git workflow with hack and ship (object.io)
29 points by Superfud on Jan 2, 2011 | hide | past | favorite | 8 comments


Uh, his hack script is just "git pull --rebase". This is even the default when a fast-forward is safe.


You can even make it always the default by setting branch.<name>.rebase to true, and can make /that/ the default by setting branch.autosetuprebase to always ;P.


What about "ship"?

Meanwhile, has `git pull` had a `--rebase` since the dawn of Git time in 2005, or did it appear at one point?


git pull --rebase was added in 1.5.4, released in February 2008 (http://kerneltrap.org/Linux/GIT_1.5.4_An_Unusually_Long_Cycl...).


The " || exit 1" is unnecessary. Just use "set -e" at the top of the script once.


Looking for more about this, I found a pretty good post:

http://www.davidpashley.com/articles/writing-robust-shell-sc...


Just be aware that using 'set -e', while good advice in general, won't catch everything. Particularly lists and sub-shells may return with the status code of the last command, not the failed command, depending on how they were used. So it is possible a command failed within but won't trigger the -e.

The best way is to write the compound commands and any sub-shell commands so that they will exit with the return status of any command that failed, using, say, &&.


This workflow would probably also benefit from a gitc script, for fast committing:

#!/bin/bash

git commit -a -m "$*"




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: