“Fractal Hillock” — Git workflow
Time and time again I’m asked what this means, as I’ve pointed out to most people, it’s never been published, anywhere.
Yes, this is in-house git workflow created by two developers, Alister McGown-Douglas and Andrew Wheal, whom I worked with at Propeller Communications.
The gist of the workflow is as follows:
- Resolve conflicts, if any
- Force push
So something like this.
git fetch -p
git rebase <branch> # resolve deps during rebase
git push -f <origin> <branch>
To “close” (i.e. merge) the work the branch is based off, the following would occur:
- The above steps
- git close (which is essentially a fancy bash script that runs the following command
git merge --ff-only <branch>
Why use this work flow?
It makes your git-tree much more elegant. I promise you.
* 963ece5 (HEAD, origin/master, master) Merge pull ...
| * d0cdc36 [BUG] fixed typo within README and upped ...
* f31dea3 (tag: 0.1.1) Merge pull request #20 ...
| * 66f445a [BUG] added code quality and coverage statuses
* a18f4c9 Merge pull request #19 from steadweb/bugfix/scrutinizer
| * ccef680 [BUG] added script to wrong config file, derp.
| * a23f10b [BUG] added phpunit --coverage-text command
| * def82d2 [BUG] added scrutinizer config
* f8adcea Merge pull request #17 from steadweb/bugfix/travis
| * 4bbb298 [BUG] added travis-ci build status
* 90f7463 Merge pull request #12 from steadweb/bugfix/docume...
| * 657102f [BUG] corrected typo in README
* 582f7e3 Merge pull request #11 from steadweb/bugfix/build
| * 49eeca9 [BUG] moved build job into ./build dir
* dee47c2 Merge pull request #9 from steadweb/bugfix/psr2
| * 6131f69 [BUG] psr2 fixes
| * 7445f70 [BUG] better unit tests for Processes. Moved NullOut...
| * 58c01d0 [BUG] additional travis / psr2 fixes
One simple rule, never run
git pull origin/master — ever.