お知らせ
現在サイトのリニューアル作業中のため、全体的にページの表示が乱れています。
echo -n 'username:password' | base64
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
を暗号化したIDPWに置き換えるlocation /foo/ {
# プロキシが使うHTTPヘッダ
proxy_set_header Authorization "Basic XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
# プロキシするURL
proxy_pass https://example.com/;
}
いくつか方法があるが、正直どれも使わないに越したことはない。しかし業務上の様々なしがらみなどでやむを得ず使うハメになることがある
リモートの変更まで無視してしまうと事故の元なので一番オススメ
git update-index --[no-]skip-worktree
を使う
.env
のような個々人の環境によって異なるものがリポジトリ管理対象になっているときに使える--skip-worktree
となっている対象の変更を隠す# --skip-worktreeの一括解除
git ls-files -v | grep ^S | sed -r 's/^S.(.+)$/\1/g' | xargs git update-index --no-skip-worktree
# 出てきた変更を全てスタッシュに入れる
git stash push -q -m stash_skiptree
--skip-worktree
し直す# stashから戻す
git stash pop -q
# この時点での差分に対し--skip-worktree
git diff --name-only HEAD | xargs git update-index --skip-worktree
リモート側で重大な変更があったときにローカルで検知できないので事故りやすい
git update-index --[no-]assume-unchanged
を使う
使ったことないので存在だけ記述して終わり
--[no-]skip-worktree
も--[no-]assume-unchanged
も使えないときにユースケースが存在するやつ
.git/info/exclude
に無視対象のパスを記述することで無視できるdocker-compose.override.yaml
みたいなのを無視するときに使える取り敢えず各ジョブの中で使うやつ
今まで使っていた::set-output
は2023-05-31に廃止される予定なので置き換える必要があります。
GitHub Actions: Deprecating save-state and set-output commands
echo "<KEY>=<VALUE>" >> "$GITHUB_OUTPUT"
steps.<ID>.outputs.{KEY}
name: variable example
on:
workflow_dispatch:
jobs:
ubuntu-testing:
runs-on: ubuntu-latest
steps:
- id: example
run: echo "value=hoge" >> "$GITHUB_OUTPUT"
- name: disp
run: echo ${{ steps.example.outputs.value }}
フックを単体でテストするケースを想定。
このパターンはコンポーネントからフックを切り離しているケースで有用。手法としては@testing-library/react-hooks
のrenderHook()
を使う。
export const useUserForm = () => {
const [username, setUsername] = useState('');
const [password, setPassword] = useState('');
const onChangeUserName = (ev: string) => {
setUsername(ev);
};
const onChangePassword = (ev: string) => {
setPassword(ev);
};
return {
username,
password,
onChangeUserName,
onChangePassword,
};
};
it('onChangeUserName で username が設定されること', () => {
// `renderHook` で Hook をレンダリング
const { result } = renderHook(() => useUserForm());
// `act()` で Hook のイベントを叩く
act(() => result.current.onChangeUserName('foo'));
// 結果を見る
expect(result.current.username).toBe('foo');
});
System.Reactive
をNuGetから入れるthis.ticker= Observable.Interval(new TimeSpan(0, 0, 15));
でObserverを作るthis.ticker.Subscribe(
(item) => {
// 任意のコントロールを操作する例
// this.Invokeでコントロールを操作するメソッドを呼び出すと実現できる
this.Invoke(
(MethodInvoker)(delegate () {
// ここに処理
})
);
}
);
どうでもいいけどRx.NETってちゃんとしたリファレンスなくね?