4
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

🛠️ Gitマスターへの道:プロが使う10の裏技 & ベストプラクティス

Gitは単なるバージョン管理システムではなく、プロジェクトの効率性や開発者の生産性を大幅に向上させる強力なツールです。しかし、多くの開発者が基本的なコマンドに留まり、その潜在能力を十分に活かしきれていません。

本記事では、プロのエンジニアが実際の開発現場で活用しているGitの「裏技」や「ベストプラクティス」を10個厳選してご紹介します。これを読めば、あなたもGitマスターの仲間入りです!


1. git rebase -i で履歴を美しく整える

チーム開発では、コミット履歴を分かりやすく整理することが重要です。git rebase -i を使えば、過去のコミットを編集、結合、削除することができます。

git rebase -i HEAD~5

例えば、直近5つのコミットを対象にして、不要なコミットを削除したり、複数のコミットを1つにまとめたりできます。特にPRを送る前に履歴をきれいにするのに有用です。

2. git stash を使いこなす(作業中の変更を一時保存)

作業中の変更をコミットせずに一時的に保存したい場合、git stash が便利です。

git stash

その後、必要なときに取り出せます。

git stash pop

また、git stash list で保存した変更の一覧を確認できます。

3. git bisect でバグを高速に特定

バグの原因となるコミットを特定するのに、git bisect は非常に強力です。

git bisect start

例えば、動作する最新のコミットと、バグが発生するコミットを指定し、Gitが自動で二分探索してくれます。

git bisect good <正常なコミットID>
git bisect bad <バグがあるコミットID>

その後、Gitが提示するコミットごとにチェックを行い、バグの原因を特定できます。

4. git cherry-pick で特定のコミットを別ブランチへ適用

特定のブランチの変更を、別のブランチに適用したい場合に git cherry-pick を使います。

git cherry-pick <コミットID>

例えば、feature-branch で修正したバグを main に適用したい場合に便利です。

5. git commit --amend で直前のコミットを修正

直前のコミットメッセージを変更したい場合、git commit --amend を使います。

git commit --amend -m "新しいコミットメッセージ"

また、直前のコミットに新しいファイルを追加することもできます。

git add <ファイル名>
git commit --amend --no-edit

6. git reflog で消えたコミットを復活

ブランチを間違えて削除してしまったり、git reset で戻れなくなったときに git reflog が助けになります。

git reflog

これにより、最近の操作履歴が一覧表示されるので、該当のハッシュを使って復元できます。

git checkout <ハッシュ>

7. git reset --soft vs --hard の違い

git reset はブランチを特定の状態に戻すコマンドですが、オプションによって動作が異なります。

  • --soft: コミットのみ取り消し、変更内容はそのまま
  • --mixed(デフォルト): コミットとステージングを取り消し、変更内容はそのまま
  • --hard: コミットも変更内容もすべて削除(注意!)
git reset --soft HEAD~1  # 直前のコミットを取り消す(変更は保持)
git reset --hard HEAD~1  # 直前のコミットを完全に削除

8. .gitignore を有効活用する

不要なファイルをGitの管理対象から除外するために .gitignore を設定します。

例えば、以下の .gitignore はよく使われます。

node_modules/
.env
*.log

Gitに既に追加されてしまった不要なファイルを無視する場合は、以下のコマンドを実行します。

git rm --cached <ファイル名>

9. git blame で変更履歴を追跡

特定の行が「誰によって、いつ変更されたのか」を知るために git blame を使います。

git blame <ファイル名>

各行ごとにコミットIDや作者が表示され、変更の経緯を把握できます。

10. git log のカスタマイズで履歴を見やすく

標準の git log は情報が多すぎて見にくいですが、カスタマイズすれば見やすくなります。

git log --oneline --graph --decorate --all

これにより、ブランチの関係が視覚的に表示され、履歴が一目で分かりやすくなります。


🔚 まとめ

Gitは奥が深く、適切に使いこなせば開発効率が飛躍的に向上します。本記事で紹介した10の裏技を活用し、よりスマートなバージョン管理を実践してください!

💡 皆さんのおすすめのGitテクニックがあれば、ぜひコメントで教えてください!

4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?