59
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

アイレット株式会社Advent Calendar 2024

Day 16

これを知らないと損!開発者なら知っておきたいGitコマンド10選

Last updated at Posted at 2024-12-15

実は、この記事

という選手権で生成AIが考えたタイトルになります!
さぁ、生成AIの筋肉、ならぬ「バズマッスル」の真価を見せてもらいましょう:tada:

はじめに

Gitは非常に強力なツールですが、多くの開発者が使うのは基本的なコマンドだけでその真価を発揮できていません。git commitgit pushだけでなく、知っておくと開発効率が劇的に向上する隠れたコマンドがたくさんあります。
本記事では、git bisectを使ったデバッグ方法や、git stashを活用した効率的な作業方法など、実際の開発現場で役立つ10のコマンドを紹介します。

Gitコマンド10選

1. git bisect

不具合を特定するために、良いコミットと悪いコミットを効率的に探すバイナリ検索ツール

git bisect start
git bisect bad
git bisect good <commit-hash>

2. git stash

現在の作業状態を一時保存し、ワーキングツリーをクリーンにする

git stash save "WIP: fixing issue"
git stash list
git stash apply

3. git reflog

過去のすべてのHEADの移動履歴を表示する
失ったコミットを見つけるのに便利

git reflog
git checkout <commit-hash>

4. git cherry-pick

特定のコミットを選んで、現在のブランチに適用する

git cherry-pick <commit-hash>

5. git blame

ファイルの各行を最後に変更した人とそのコミットを表示する

git blame <file-name>

6. git clean

追跡されていないファイルやディレクトリを削除して、リポジトリをクリーンにする

git clean -f -d

7. git log --oneline --graph

コミット履歴を簡潔にツリー形式で表示する

git log --oneline --graph --all

8. git reset

指定したコミットまでリポジトリをリセットする

git reset --soft <commit-hash>  # コミットをリセット(作業状態は保持)
git reset --hard <commit-hash>  # 作業状態を含めリセット

9. git diff

ワーキングツリーとインデックスの間、または2つのコミット間の差分を表示する

git diff HEAD
git diff <commit-hash1> <commit-hash2>

10. git archive

特定のコミットの内容をZIPやTARファイルとしてエクスポートする

git archive -o latest.zip HEAD

まとめ

Gitを使いこなすには、基本的なコマンドだけでなく、高度な機能を活用することが重要です。
この記事で紹介した10のコマンドを取り入れることで、作業効率が向上したりデバッグが速くなったり、チームメンバーを驚かせることもできるかもしれません!
ぜひ、これらのコマンドを試してみて、開発プロセスをよりスムーズにしてみてください。

最後までお読みいただき、ありがとうございました。この記事が読んでくださった方のお役にたつことを祈ります:blush:

59
14
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
59
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?