1
2

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 3 years have passed since last update.

【Git】余計なコミットを記録しない。コミット後に小修正を適用した場合の対処法(git commit --amend --no-edit)

Last updated at Posted at 2020-12-25

コミットした直後に、不要なスペースやカンマやconsoleなどデバッグ用コードの消し忘れに気付き消してコミットすると、履歴が汚くなる。

事例

例えば、pタグを追加しコミットした後で、不要なスペースがあるのに気付き再度コミットする場合。

コミット1
<p>added </p>

↓スペース削除

コミット2
<p>added</p>

**▼普通にコミットした場合**
コミット履歴
* cd50968 - (HEAD -> master) remove space
* f9ac530 - add p

add pの後に、余計なコミットremove spaceが入る。

対処法

追加処理(git add後)のコミット時にオプションで--amendを使う。

git commit --amend --no-edit

git add .
git commit --amend --no-edit

ファイルの内容は上書きされるが、コミット履歴を残さない(前回のコミットメッセージのまま)

コミット履歴
* ed04c55 - (HEAD -> master) remove space
* f9ac530 - add p

※注:コミット番号は変わる。

コミットメッセージを変更する場合

ファイルの追加等なしで、単にファイル名を変更したい場合は--amend -mオプションを使う

git commit --amend -m "変更後のメッセージ"

元のコミット
* ed04c55 - (HEAD -> master) remove space

↓ git commit --amend -m "変更後のメッセージ"

メッセージの変更
* a378eb4 - (HEAD -> master) 変更後のメッセージ

こちらも、コミット番号が変わる。


## 注意点 githubを使い複数人で開発している場合の注意点はmasterにmerge後のコミットは修正してはいけない。

自分のローカルのみなら、強制プッシュpush -fで修正できるが、もし、masterにマージしてしまったら、自分だけでなく使っている人全員にpush -fなどの対処をしてもらわなければならない。

プッシュ後の自分のブランチへの強制プッシュ法

git push origin ブランチ名 -f

masterへの強制プッシュは絶対禁止!!!!(master -fの組み合わせはあってはならない)

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?