2020-05-04

5/4

git pull –pruneしてマージ済みローカルブランチを掃除するgitのサブコマンドを作った

何番煎じだよって感じだけど、いい加減面倒になったので作った。

コード: git-wraps/bin/git-branch-clean

gitのaliasにも設定したかったので、オプションにも対応させた。

% git bc -h
NAME
    git-branch-clean - git subcommand to clean up merged local branches

SYNOPSYS
        git branch-clean [OPTIONS]

DESCRIPTION
    This is a git subcommand to clean up merged local branches.

    Branches "master" and "develop" are whitelisted by default. You can
    change the whitelist by "-a|--allow BRANCH" option.

    Current branch is always whitelisted.

OPTIONS
    -i  Interactive mode. Show prompt before deleting branch.

    -a|--allow BRANCH
        Add argument as branch name to whitelist which won't be deleted.
        This option can be specified multiple times.

        Ex)

            # Whitelist = (develop, master, CURRENT)
            git branch-clean

            # Whitelist = (foo, CURRENT)
            git branch-clean -a foo

            # Whitelist = (test, master, CURRENT)
            git branch-clean -a test -a master

    -p|--pull
        Execute "git pull --prune" before deleting branches.

    -v|--verbose
        Verbose output.

    -h|--help
        Show help text.

このスクリプトをPATHが通っている場所に置く。

.gitconfigのaliasはこんな感じ:

[alias]
    plr = pull --prune
    bc  = branch-clean --pull
    bcp = branch-clean --pull

git branch-cleangit plrgit bcp か、利用頻度によってaliasを調整するかもしれない。(※追記あり)

参考:

5/9 追記

git-branch-sweep -> git-branch-clean にリネームして、上を書き換えた。
エイリアスは3つ登録した。

Ubuntuでkubectxをlinuxbrewで入れた

https://github.com/ahmetb/kubectx

READMEには明記されてはいないのだけど、 brew install kubectx でふつうにインストールできて使えた。
まあ、シェルスクリプトだしな。

memo/ ページの階層を増やしたらHogoのサイト内ページ参照が壊れた

下の変更による:

例えば、20200502.md内のリンクを20200501へのリンクを {{\< ref "/a/memo/20200501.md" \>}} に戻すと、次のエラーが出る:

% hugo -v --path-warnings
INFO 2020/05/05 06:53:45 Using config file:
Building sites … INFO 2020/05/05 06:53:45 syncing static files to /home/progrhyme/my/repos/tech-notes/public/
INFO 2020/05/05 06:53:45 postcss: use config file /home/progrhyme/my/repos/tech-notes/themes/docsy/postcss.config.js
ERROR 2020/05/05 06:53:47 [ja] REF_NOT_FOUND: Ref "/a/memo/20200501.md": "/home/progrhyme/my/repos/tech-notes/content/ja/a/memo/20200502.md:16:34": page not found
Total in 2470 ms
Error: Error building site: logged 1 error(s)