1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

タスクを効率的に管理するためのGitの使い方:git revert、git reset --hard、そして.gitignoreを活用しよう!

Posted at

この記事では、初めてのチーム開発でGitを使ってタスクをこなすシーンを通じて、git revertgit reset --hardコマンド、そして.gitignoreの使用方法をまとめました。

【シナリオ】

タカノリくんは、仮想通貨の取引を行うWebアプリケーションを開発するプロジェクトチームに参加しています。今日から彼は、新たな機能の開発に取り組みます。開発する機能は"ユーザープロフィール表示"です。

STEP 1: git revertを使って最新のコミットを元に戻す

タカノリくんは新機能の開発中、誤ってバグを導入してしまうコミットをしてしまいました。彼はこの問題を修正するために、git revertコマンドを使います。

$ git revert HEAD

ここでHEADは現在のブランチの最新のコミットを指しています。したがって、git revert HEADとすると、最新のコミットが元に戻され、バグが修正されます。なお、特定のコミットを元に戻したい場合には、HEADの代わりにそのコミットのハッシュを指定します。

git revertは新しいコミットを作成して変更を反転させるため、コミット履歴は維持されます。

STEP 2: git reset --hardを使ってコミットを削除する

次に、タカノリくんは誤ってプロジェクトに関係ないファイルを追加するコミットをしてしまいました。彼はこの問題を修正するために、git reset --hardコマンドを使います。

$ git reset --hard HEAD~1

ここでHEAD~1は現在のブランチの一つ前のコミットを指しています。したがって、git reset --hard HEAD~1とすると、最新のコミットが削除され、前のコミットの状態に戻ります。なお、特定のコミットまで戻したい場合には、HEAD~1の代わりにそのコミットのハッシュを指定します。

git reset --hardは非常に強力なコマンドなので、使用する際には注意が必要です。

STEP 3: .gitignoreを使って特定のファイルを無視する

タカノリくんは開発中にテストデータやログ、設定ファイルなど、Gitで追跡したくないファイルを作成します。彼はこれらのファイルをGitの管理対象から除外するために、.gitignoreファイルを使います。

$ echo "log/*" >> .gitignore
$ echo "config.ini" >> .gitignore

これにより、log/ディレクトリとconfig.iniファイルはGitの管理対象から除外されます。.gitignoreはプロジェクト内の特定のファイルやディレクトリをGitの管理から除外するための重要なツールです。

まとめ

git revertgit reset --hard、そして.gitignoreは、開発作業を効率的に進めるための重要なツールです。適切に使用することで、エラーの修正、不要なファイルの管理からの除外など、様々なタスクを効率的にこなすことができます。ただし、特にgit reset --hardは非常に強力なコマンドなので、使用する際には慎重さが求められます。

1
0
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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?