postednote

便利なコマンド

2026-02-13

git merge 関連

# 事前条件(ff土台がfetchしてあること)
# fast-wofardマージを行う。できないならマージ中止
git merge --ff-only <ブランチ名>
# ffできる状態でもマージコミットを作る
git merge --no-ff <ブランチ名>

詳細: https://gemini.google.com/share/325c5ad57674

2026-02-12

# git 追跡対象のみ対象としてtreeで展開する
git ls-files | tree --fromfile .
# unstaged も含める
git ls-files -c -o --exclude-standard | tree --fromfile .

# git grep
git -C path/to/your-repo grep "archive"

# ファイル名置換のbefore, after
❯ fd archive | sed "p;s/archive/index/"

# ファイル名の一括 git mv 
❯ fd archive | while read f; do echo "git mv $f ${f/archive/index}"; done
git mv archive.md index.md
git mv templates/archive.md templates/index.md
git mv tools/generate_archive.py tools/generate_index.py

❯ fd archive | while read f; do echo "git mv $f ${f/archive/index}"; done | bash


# staged, uncommited の diff を見る
git diff --staged

# commitエディタでdiffを見る
git commit --verbose

# ファイル名の列挙->変更のbefore/after
git status -v