Skip to content

Instantly share code, notes, and snippets.

View sdyxch's full-sized avatar

woshinibaba sdyxch

View GitHub Profile
@sdyxch
sdyxch / git-mv-with-history
Created November 13, 2015 16:36 — forked from emiller/git-mv-with-history
git utility to move/rename file or folder and retain history with it.
#!/bin/bash
#
# git-mv-with-history -- move/rename file or folder, with history.
#
# Moving a file in git doesn't track history, so the purpose of this
# utility is best explained from the kernel wiki:
#
# Git has a rename command git mv, but that is just for convenience.
# The effect is indistinguishable from removing the file and adding another
# with different name and the same content.
_.each ['Model', 'Collection'], (name) ->
ctor = Backbone[name]
fetch = ctor::fetch
ctor::fetch = (options={}) ->
options = _.clone options
success = options.success
error = options.error
options.success = =>
@trigger 'fetched', @
sucess.apply null, arguments if success