Skip to content

Instantly share code, notes, and snippets.

View werkshy's full-sized avatar

Andy O'Neill werkshy

View GitHub Profile
@werkshy
werkshy / git-wtf
Created November 4, 2013 19:43
Don't remember where I found this on github: shows the current state of things (what's been pushed, whether you need to pull)...
#!/usr/bin/env ruby
HELP = <<EOS
git-wtf displays the state of your repository in a readable, easy-to-scan
format. It's useful for getting a summary of how a branch relates to a remote
server, and for wrangling many topic branches.
git-wtf can show you:
- How a branch relates to the remote repo, if it's a tracking branch.
- How a branch relates to integration branches, if it's a feature branch.
#!/usr/bin/env ruby
## git-publish-branch: a simple script to ease the unnecessarily complex
## task of "publishing" a branch, i.e., taking a local branch, creating a
## reference to it on a remote repo, and setting up the local branch to
## track the remote one, all in one go. you can even delete that remote
## reference.
##
## Usage: git publish-branch [-d] <branch> [repository]
##
@werkshy
werkshy / .gitconfig
Created September 15, 2016 20:00
Git aliases for ~/.gitconfig
[alias]
s = status
st = status # svn muscle memory
stat = status # svn muscle memory
co = checkout # svn muscle memory
cp = cherry-pick # svn muscle memory
fp = push --force-with-lease # prevents force push if there's new commits on master
lol = log --pretty=oneline --abbrev-commit --graph --decorate # compact log format
recent-branches = !"git for-each-ref --sort=-committerdate refs/heads/ | head" # show recent branches
list-merged = !"git branch --merged | grep -v '\\*' | grep -v master | xargs -n 1" # list branches that are merged into master
@werkshy
werkshy / init.rb
Last active January 11, 2017 16:18
Heroku plugin that installs busybox onto a dynos before dropping you into a bash shell.
#!/usr/bin/env ruby
# Put this file at ~/.heroku/plugins/busybox/init.rb
# Call it with 'heroku busybox'
require 'heroku/helpers'
require 'heroku/command'
require 'heroku/command/run'
class Heroku::Command::Busybox < Heroku::Command::Run
context "With Barlteby turned on" do
# TODO Get rid of NA tests and test single sku regions only when regionalization complete,
# check sku on VP instead of business region sku as well.
context "With a North American Viewable Product" do
- scenario "Lets you successfuly edit both associated skus and other fields" do
+ scenario "Lets you successfully edit both associated skus and other fields" do
+ t0 = Time.now
allow(BartlebyMode).to receive(:mode) { "full" }
viewable_product = FactoryGirl.create(:viewable_product, :bartleby_mode_full)
#!/usr/bin/swift
//
// work.swift
//
//
// Created by Andy O'Neill on 4/20/17.
//
//
@werkshy
werkshy / .yamllint
Created June 25, 2018 22:37
Yamllint Config Example
extends: default
rules:
comments:
min-spaces-from-content: 1
indentation:
spaces: 2
line-length:
max: 120
@werkshy
werkshy / start-mysql-in-mem
Created March 29, 2013 14:37
Script to start a second mysql server using ramdisk/tmpfs for unit tests.
#!/bin/bash
DATADIR=/dev/shm/mysql
TMPDIR=/dev/shm/mysql_tmp
MYSQL_SOCKET=/dev/shm/mysql.sock
pkill -9 -f mysql.*datadir.*$DATADIR
mkdir -p $DATADIR
#!/usr/bin/env ruby
## git-publish-branch: a simple script to ease the unnecessarily complex
## task of "publishing" a branch, i.e., taking a local branch, creating a
## reference to it on a remote repo, and setting up the local branch to
## track the remote one, all in one go. you can even delete that remote
## reference.
##
## Usage: git publish-branch [-d] <branch> [repository]
##
@werkshy
werkshy / config__initializers__active_merchant.rb
Created April 2, 2014 21:12
Mock Authorize.net CIM Gateway (ActiveMerchant). Released under the MIT License
# Initializer where we inject the mock gateway into global variable AUTHNET_GATEWAY or setup the real client
if !Rails.env.production?
ActiveMerchant::Billing::Base.mode = :test
end
$using_mock_auth_net_gateway = false
# Use FORCE_AUTH_NET to use the real Auth.net API in tests
# Use MOCK_AUTH_NET to use the mock Auth.net API even in development (good on a plane!)