提示:本网站现在为维护调试状态

Git 高度なワークフロー

Choyeon
Choyeon
2026年8月29日 1 分で読了 371 閲覧
347 字 1,678 文字 更新日 2026年11月8日
Git 高度なワークフロー
目次

Advanced Git Workflows

Basic add/commit/push handles daily collaboration. Advanced commands give precise history control and efficient debugging.

Interactive Rebase for Clean History

Use reword/squash/fixup/drop directives to rewrite sequences: merge WIP commits, fix messages, remove debug code, keep main branch history clean.

#!/usr/bin/env bash
set -euo pipefail

# 1. Interactive Rebase: squash最近5条WIP,reword命名
git rebase -i HEAD~5 <<EOF
pick   a1b2c3d feat: add login API
reword b3e4f5g fix typo in user model
squash c6h7i8j wip: add test cases
fixup  d9k0l1m fix lint issues
drop   e2n3o4p tmp debug log
EOF

# 2. Cherry-pick: 跨分支移植hotfix
git checkout release/2.0
git cherry-pick -x a1b2c3d
# 多个提交合入暂存区手动合并后一次性提交:
# git cherry-pick --no-commit b3e4f5g c6h7i8j
# git cherry-pick --continue / --abort

# 3. Bisect: 二分找引入Bug的提交
git bisect start
git bisect bad HEAD
git bisect good v1.8.0
git bisect run pytest tests/test_auth.py -x
# Output: a1b2c3d is the first bad commit
git bisect reset

# 4. Reflog救援
git reflog --date=iso | head -20
# git reset --hard HEAD@{3}

# 5. 批量修复作者信息
git filter-branch -f --env-filter '
if [ "$GIT_AUTHOR_EMAIL" = "old@example.com" ]; then
    export GIT_AUTHOR_NAME="Correct Name" GIT_AUTHOR_EMAIL="new@example.com"
    export GIT_COMMITTER_NAME="$GIT_AUTHOR_NAME" GIT_COMMITTER_EMAIL="$GIT_AUTHOR_EMAIL"
fi
' HEAD

Bisect for Binary-Search Bug Hunting

When regression appeared mysteriously, Bisect binary-searches the first bad commit. Combined with test scripts it finds the issue in minutes with zero manual effort.

Command Purpose Risk Level Best For
rebase -i Rewrite history Medium (local only) Before merge request
cherry-pick Port commits Low (new hashes) Backport hotfixes
bisect Binary search Very Low (read-only) Regression hunting
reflog Op history Zero (read-only) Disaster recovery
filter-branch Bulk rewrite Very High (hash change) Author info fixes

Best Practices

Golden rule: never rebase pushed commits. Before destructive ops, tag safety net with git tag backup-$(date +%Y%m%d).

X微博Telegram

筆者について

投票

你最希望 Rosetta 优先加入哪项功能?

社区投票(演示数据,可后台删除)

コメント (3)

0 / 3000
云端漫步
云端漫步cloud-notes.cloud2026年9月21日

太好了!终于有人把 CI/CD 的完整流程讲清楚了,之前看了好多文章都是只讲一半,跟着这篇一步步跑通了整个流水线。

测试小瓢虫
测试小瓢虫2026年9月21日

建议可以再加一下关于成本优化的部分,云上资源如果不注意优化的话,账单真的会吓死个人。

考研加油鸭
考研加油鸭kaoyan-journey.xyz2026年9月20日

非常棒的文章,就是希望能再深入讲讲容器镜像优化这块,我现在的镜像打包出来都 1G 多,感觉太臃肿了。

関連記事

CI/CD パイプライン設計:GitHub Actions + Cache + Matrix Build

CI/CD パイプライン設計:GitHub Actions + Cache + Matrix Build

本番級GitHub Actionsパイプライン設計:npm/pipキャッシュ、マルチバージョンNode/Python Matrix並列ビルド、Dockerレイヤーキャッシュ、Lint/Test/Build/Publish段階化、条件実行、環境マトリクス、失敗リトライとリリースゲートベストプラクティス。完全ワークフロー付き。

1 分で読了
Monorepo ツールチェーン:Turborepo + pnpm workspace

Monorepo ツールチェーン:Turborepo + pnpm workspace

大規模フルスタックプロジェクト向けMonorepo完全ガイド:pnpm workspaceによる依存関係統合管理、Turborepoによるタスクオーケストレーション・インクリメンタルビルド・リモートキャッシュ。Nx/Lerna比較、コード共通化とリリースベストプラクティス。

1 分で読了
Docker Compose 本番デプロイ実践

Docker Compose 本番デプロイ実践

Docker Composeの本番環境ベストプラクティス:マルチステージビルド、ヘルスチェック、リソース制限、ログ設定、ネットワーク分離、シークレット管理を解説。

1 分で読了
Prompt Engineering 入門:Few-Shot + CoT + 構造化出力

Prompt Engineering 入門:Few-Shot + CoT + 構造化出力

Prompt Engineering体系入門:3つのコアテクニック——Few-Shot例示学習でドメインスタイル注入、Chain-of-Thoughtで複雑推論誘導、JSON Schema強制構造化出力で下流システム連携。実テンプレートとアンチパターン集付き。

1 分で読了
Alembic ディープガイド:DBマイグレーション + 自動生成 + ブランチマージ

Alembic ディープガイド:DBマイグレーション + 自動生成 + ブランチマージ

SQLAlchemy公式マイグレーションツール Alembic 完全ガイド:env.py設定、autogenerateによるモデル変更検出(カラム・インデックス・制約)、バッチスクリプト、ダウングレードロールバック戦略、複数人開発時のマイグレーションコンフリクトとhead分岐マージの標準SOP、本番デプロイチェックリスト付き。

1 分で読了
テストピラミッド:単体/結合/E2E 比率と実践

テストピラミッド:単体/結合/E2E 比率と実践

テストピラミッド体系解説:下層 単体テスト(多数・高速・Mock分離)、中層 結合テスト(実DB/メッセージ協調)、上層 E2E(少数・重要ユーザーフロー)。推奨比率 70/20/10、カバレッジ指標と実践ガイド。

1 分で読了