Skip to content

Instantly share code, notes, and snippets.

View mbenford's full-sized avatar

Michael Benford mbenford

View GitHub Profile
@mbenford
mbenford / .gitconfig
Last active August 29, 2015 14:02
Useful Git alias
[alias]
aa = add -A
co = checkout
st = status
ci = commit
br = branch
me = merge
rs = reset
rb = rebase
df = diff
@mbenford
mbenford / forceDatabinding.js
Last active August 29, 2015 14:03
Simple Angular directive to force data to be bound even when it's deemed invalid by some validator
app.directive('forceDatabinding', function() {
return {
require: 'ngModel',
link: function(scope, element, attrs, ngModel) {
ngModel.$parsers.push(function(value) {
return value || ngModel.$viewValue;
});
}
};
});
@mbenford
mbenford / DeployMultipleToOctopus.ps1
Created August 11, 2014 02:30
Powershell script for TeamCity that creates and deploys multiple releases on Octopus Deploy
function Build-Arguments($project) {
$args = @()
$args += "create-release"
$args += "--server=%octopus.url%"
$args += "--apikey=%octopus.apikey%"
$args += "--project=$project"
$args += "--version=%octopus.releaseNumber%"
$args += "--deployto=%octopus.deployTo%"
$args += "--packageversion=%octopus.packageVersion%"
$args += "--force"
#!/bin/bash
set -e
release_branch=$(git-get-release-branch.sh $1)
local_branch=$(git rev-parse --symbolic-full-name --abbrev-ref HEAD)
if [ "$local_branch" != "master" ]; then
echo "The current branch is not master. Aborting."
exit 1
fi
#!/bin/bash
set -e
if [ "$1" != "" ]; then
release_name="release/$1"
else
release_name=$(git branch -r | tail -n1 | sed 's/.*origin\///')
fi
echo $release_name
#!/bin/bash
set -e
if [ "$1" == "" ]; then
echo "fatal: pull request number must be provided"
exit 1
fi
branch="pr/$1"
@mbenford
mbenford / dom-events.js
Created April 10, 2015 19:03
Monitoring DOM insertions and removals
document.addEventListener('DOMNodeInserted', function(event) { console.log('Inserted:', event.srcElement); });
document.addEventListener('DOMNodeRemoved', function(event) { console.log('Removed:', event.srcElement); });
@mbenford
mbenford / mergesort.js
Created April 14, 2015 23:12
Merge sort in Javascript
function mergesort(array) {
return sort(array, 0, array.length - 1);
function sort(array, start, end) {
if (start === end) return [array[start]];
var middle = Math.floor((start + end) / 2);
return merge(sort(array, start, middle), sort(array, middle + 1, end));
}
@mbenford
mbenford / get-permutations.js
Created April 30, 2015 03:15
Generate all permutations of the given set
function getPermutations(set) {
var result = [];
permutate(set);
return result;
function permutate(set, subset) {
if (!subset) subset = [];
if (set && !set.length) {
result.push(subset);
return;
@mbenford
mbenford / .bash_aliases
Last active August 29, 2015 14:21
My .bashrc file
alias la="ls -a"
alias psa="ps aux"