私はgitにかなり慣れていないので、3つのコミットを1につぶしてPRをマージできるようにする方法を見つけようとしています。多くのドキュメントとガイドを読み、コミットをスカッシュする方法を見つけましたが、コミットの1つが表示されません。 「git rebase -i HEAD〜5」と入力すると、コミットの写真と端末の写真を添付してみましたが、残念ながら私は新しいユーザーなので、できませんか?とにかく、私はいくつかの助けをいただければ幸いです。
このコマンドを使用
git rebase -i HEAD~3
ここで、チルド〜記号3は、最新の3つのコミットを選択します。対話型のシェルにポップアップ表示され、トップコミットを選択し、sと入力して他の2つのコミットを1つにつぶすことができます。これはスカッシュを意味します。
コミットが表示されない場合は、git logを実行して、表示されない場合は確認してください
git add files
git commit -m 'your commit'
2016年4月1日以降、リポジトリ管理者は プルリクエストのスカッシング を実行できるようになりました。ただし、これを自分で行うように要求されている場合は、次のようにします。
PRをマージするときに、GitHubにSquash And Mergeオプションがあります。だから、あなたがあなたの側でする必要があることは何もありません、マージするときにオプションのスカッシュとマージを使用してください。
コミットのスカッシュとは、いくつかではなく新しいコミットを作成することを意味します。 git reset
をブランチのベースコミットに追加し、新しいものを作成します。次にgit Push -f
をブランチに追加します。