衝撃のわからなさ

わかってません

2024/01/10日報

git repositoryのsizeが一定以上をlfs trackするやつ

find . -type f -size +1M -not -path "./.git/*" | xargs git lfs track
いままでこのワンライナー使ってたのだけれど、 単に特定サイズ以上を全部trackすると.gitattributeが汚くなって嫌なので書いた。

例えばこう書いてあるものが

*.so

こうなるのが嫌だった。

*.so
liba.so
libb.so
import $ from "https://deno.land/x/dax_extras/mod.ts";
 
// git lfs track more 1MB files
await $`find . -size +1M -not -path "./.git/*"`.forEach(async (file) => {
  const filter = (await $`git check-attr filter ${file}`.text()).match(/filter: (.*)/);
  if (filter && filter[1] === "lfs") return;
  await $`git lfs track ${file}`;
});

mimic-cross実装

mimicx chroot ls -l が実行できない

ということに気づいた。
-lがmimicxのオプションとして処理されてしまう。
mimicx chroot -- ls -lで動くと良さそうだが、 --が出てくるとそこでparseが終わるような挙動をしている。

Deno CLI コマンド作成 最速 方法 20231218 を見てparseArgs試して見たりもしたが、cliffyの書き心地が良かったなと言う気持ちに。

cliffyでなんとかしたいので明日見てみる。