Skip to content

Instantly share code, notes, and snippets.

@libitte
libitte / gist:5482459
Created April 29, 2013 15:41
homebrewのuninstall手順。boxenのhomebrew使いたかったので削除した。

homebrewのuninstall手順

cd `brew --prefix`
rm -rf Cellar
brew prune
rm `git ls-files`
rm -r Library/Homebrew Library/Aliases Library/Formula Library/Contributions
rm -rf .git
rm -rf ~/Library/Caches/Homebrew
日付からunixtimeを得るshellscriptコード
```
$ date -d yesterday +%F
2013-05-17
$ date -d 2013-05-17 +%s
1368716400
```
crontab設定の時、EDITORをvimに指定してやると、vimの各種便利機能が使えて便利。
つまりこんなかんじで実行。
```
EDITOR=vim && crontab -e
```
@libitte
libitte / gist:5692840
Created June 2, 2013 06:45
git管理しているファイルを敢えて無視する assume-unchanged

###assume-unchanged ファイルの変更を無視する。

git update-index --assume-unchanged filename

###no-assume-unchanged この設定を取り消す。

git update-index --no-assume-unchanged filename
@libitte
libitte / gist:5697366
Created June 3, 2013 10:38
mergeしたいけど、怖いのでdryrunしたいとき
@libitte
libitte / gist:5698716
Last active December 18, 2015 00:48
基本的に配列の要素削除を行う関数splice

#splice 基本的に配列の要素削除を行う関数。

my @a = qw/10 20 30 40 50 60 70 80/;
my $n = 2;
my $m = 3;

###引数1つ

@libitte
libitte / gist:5771172
Created June 13, 2013 04:08
git log --oneline --stat alias登録方法

git log のoneline, statオプション

$ git log --oneline --stat

これをエイリアス登録

$ git config --global --add alias.ls 'log --oneline --stat'
@libitte
libitte / git_rebase_i.md
Created June 13, 2013 10:45
git rebase -i HEAD~3

一つ前のコミットを修正したいときは、 git commit --amend で事足りますが、複数commitを修正したいときには、rebase -iを使います。

3つ前のcommitまで指定。

$ git rebase -i HEAD~3

こんな編集画面になります。

@libitte
libitte / gist:5802975
Last active December 18, 2015 15:19
remote branch 削除方法

1

~/.gitconfigを作成

[alias]
  rmrf = !sh -c 'git branch -d $0 && git push origin :$0'

これをすると、指定したブランチが今いるブランチにマージされていればそのブランチを消して、さらに同名のoriginのブランチを消すというスグレモノ。

2

@libitte
libitte / new_gist_file.md
Last active December 18, 2015 16:29
git checkout another_branch -- path_to_file

git checkout "--" をつけることによって他のオプションなのかパスが来るのか判断している。

git checkout [-f|--ours|--theirs|-m|--conflict=<style>] [<tree-ish>] [--] <paths>.

こういうケースとかには "--" がないとつらい。

git checkout <tree-ish> <path1> <path2>
git checkout