Tips

今日の開発Tips(2025-05-28)

今日、開発効率を上げるためのTipsを紹介します。 `git stash`コマンドの使い方を学ぶことで、作業中の変更を一時的に退避させ、ブランチの切り替えやコミットをスムーズに行うことができます。これにより、コンテキストスイッチのオーバーヘッドを減らし、開発フローを中断することなく作業を進められます。

効率的なGitワークフロー:git stashを使った変更の一時退避

git stashコマンドは、作業中の変更を一時的に保存し、作業ディレクトリをクリーンな状態に戻すためのコマンドです。 新しいブランチに切り替えたり、緊急のバグ修正に対応したりする際に便利です。 stashした変更は後で簡単に復元できます。

基本的な使い方:

  • 作業中の変更をstashする: git stash push -u "メッセージ" (-uオプションはuntrackedファイルもstashします)
  • stashの一覧を表示する: git stash list
  • 特定のstashを適用する: git stash pop stash@{0} (0はstashリストの一番新しいstashを示します。番号を変更して他のstashを適用できます)
  • stashを削除する: git stash drop stash@{0}
  • stashを適用せずに削除する: git stash clear

コード例:

# 作業中の変更をstashする
git stash push -u "fix typo before branching"

# stashの一覧を表示する
git stash list

# 新しいブランチに切り替える
git checkout new-branch

# stashを適用する
git stash pop stash@{0}

# stashを削除する
git stash drop stash@{0}

注意点:

  • stashした変更は、stashを適用するまでローカルにしか保存されません。重要な変更は必ずコミットしましょう。
  • stashリストには、stashした内容に関する短いメッセージを付けることで、後から理解しやすくなります。
  • stashの適用時にコンフリクトが発生する可能性があります。その場合は、コンフリクトを解決してから作業を続行してください。

おすすめポイント:

git stashを使うことで、作業中の変更を安全に一時退避でき、開発作業の効率を大幅に向上させることができます。 特に、複数のタスクを並行して進めている場合や、緊急のバグ修正に対応する場合に有効です。