CocoaPodsをつかっていて、pod setupの処理が遅い(いつまで経っても終わらない)
[Obj-C] メソッドファミリー
Objective-Cにおいてインスタンスを生成するメソッドは命名規則が決まっている。この命名規則を元に処理系がオーナーシップポリシーを判定して、コンパイル時の警告やエラーを判定するため注意すること。SwiftからObjective-Cのメソッドを呼び出したときも、下記の『メソッドファミリー』が影響する。
[git] submoduleの更新方法
1. (new commits) と表示される
1-1. git status の例
1 2 3 4 5 6 7 8 9 10 |
$ git status On branch develop Your branch is up-to-date with 'origin/develop'. Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: mySubModule (new commits) no changes added to commit (use "git add" and/or "git commit -a") |
var と let の違い
1. ECMAScript 2015 / ECMAScript 6 (ES6), [TypeScript]
1-1. var
関数スコープ
厳密には、function, module, namespace, or global scope
1 2 3 4 5 6 7 8 9 10 11 |
function scope_sample_var() { var i = 1; console.log(i); // => 1 { var i = 2; console.log(i); // => 2 } console.log(i); // => 2 } scope_sample_var(); |
macOSに導入したnginx
起動 / 停止 / 再起動
起動
1 |
$ sudo nginx |
停止
1 |
$ sudo nginx -s stop |
再起動
1 |
$ sudo nginx -s reload |
設定ファイルの場所
/usr/local/etc/nginx
macOS SierraでsshのパスワードをKeyChainに記憶
macOS Sierraでは(デフォルト設定で)sshのパスワードをKeyChainに記憶しない。
~/.ssh/config
に UseKeychain と AddKeysToAgent を追加する。
1 2 3 4 5 6 |
Host myHost HostName xxx.xxx.xxx.xxx UseKeychain yes AddKeysToAgent yes IdentityFile ~/.ssh/id_rsa User alice |
macOSのsed
macOS(OS X)のsedはBSD系UNIXのためGNU(System V系UNIX) sedと振る舞いが異なる。
上書き保存のときはバックアップファイルの拡張子を指定する必要がある。
1 |
$ sed -i '.bak' 's/Alice/Bob/' greeting.txt |
実行結果
- greeting.txt : 編集(置換)実行後のファイル
- greeting.txt.bak : 編集(置換)実行前のオリジナル(バックアップ)ファイル
-
※編集(置換)が実行されないケースでも編集後のファイルのタイムスタンプは更新されて、バックアップファイルが作成される。
下記のようにバックアップファイルの拡張子を指定しなければ、バックアップファイルは作成されない。
1 |
$ sed -i '' 's/Alice/Bob/' greeting.txt |
[git] shallow clone
gitの最新の履歴から数世代だけ遡って取り出す
[git] push におけるメモリ不足回避
git push
や、その前段に実行される git gc --auto
で発生するメモリ不足(out of memory)を回避する方法
Ubuntuでrootユーザにスイッチする
1 |
$ sudo su - |
su
: switch user
-
, -l
, --login
: loginシェルを使う。このオプションを外すとデフォルトシェル(例えば sh)に切り替わる。