0

Git でいくつかのコミットをマージしましたが、機密情報が含まれているため、このコミットを削除する必要があります。マージの前に HEAD をコミットに入れる必要があります。

4

2 に答える 2

1

git rebase削除するコミットを選択できる素敵なリストがポップアップするので、私はこのジョブに使用することを好みます。リストするコミットの数を選択してから、このように呼び出します

git rebase -i HEAD~3

サンプルリスト

pick aa28ba7 Sanity check for RtmpSrv port
pick c26c541 RtmpSrv version option
pick 58d6909 Better URL decoding support

次に、git は、削除した行のコミットを削除します。

于 2013-01-18T22:59:02.650 に答える
0

これを行う別の方法がありますが、この場合の解決策があります。

masterブランチを使用しているとしましょう。

まず、マスターの最後になりたいコミットをチェックアウトし、マスターブランチを再作成します。

git checkout 2fa59698256c4c3fb85c6e32741071797d5965b3
git checkout -b master

次に、サーバーに履歴を削除するように強制します。

git checkout --amend
git push origin master --force

これにより、以降のすべてのコミットが消去されます。

使用してから力を入れてプッシュすることができますgit rebalse~x...しかし、困ったときは常にチェックアウトを使用することを忘れないでください。ブランチを切り替えるために常に実行しています。

于 2013-01-18T23:01:45.070 に答える