ソフトウェア開発の継続的な発展において、バージョン管理は不可欠なスキルです。現在最も人気のあるバージョン管理ツールである Git は、すべての開発者が知っておくべきツールの 1 つでもあります。 Git の操作に慣れてくると、Git のログにますます敏感になります。開発中、ログを使用してコード変更の履歴を追跡する必要がありますが、場合によっては、機密性の高いログ レコードを削除する必要があることもあります。この記事ではGitのログを削除する方法を紹介します。
Git では、ログはウェアハウス内の各コミットの履歴を記録するコマンドを指します。各送信には SHA-1 識別子があり、これを使用して、対応する送信履歴情報を照会できます。 log コマンドを使用すると、特定のコミット範囲の履歴を表示できます。
通常、コミット履歴レコードを保存することはコード変更の履歴を追跡できるため重要です。ただし、開発者はコードのセキュリティを保護するために特定の機密情報を削除する必要がある場合もあります。たとえば、コードを送信するときに誤ってパスワードやキーなどの機密情報を公開した場合、悪意のあるユーザーによる使用を防ぐためにこの情報を削除する必要があります。このとき、Git 内のログ レコードを削除することが非常に必要です。
Git では、ログを削除する方法が 2 つあります:
場合によっては、開発者は最新のコミットを削除するだけで済みます。機密情報が送信された場合など。次のコマンドを使用できます。
git reset --hard HEAD~1
このコマンドは、最新のコミット (つまり HEAD) を削除し、最後にコミットされたバージョン (つまり HEAD~1) にロールバックします。
コードを再送信して以前のコミット履歴を保持したい場合は、次のコマンドを使用できます:
git push origin HEAD --force
このコマンドはコードを強制的に送信し、リモートの履歴を上書きします。倉庫。
複数のコミットを削除したい場合は、コマンド
git rebase -i commit_id
commit_id
を使用します。このコマンドの <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">git reset HEAD^</pre><div class="contentsignin">ログイン後にコピー</div></div>
commit_id
は、目的の内容を表します。削除するコミット バージョンの前のコミット ID。このコマンドを実行すると、対話型エディターが開き、
を
editに変更し、保存して終了します。
次に、次のコマンドを実行します。
git add . git commit --amend git rebase --continue
このコマンドは、git を前のコミットにロールバックし、このコミットの変更をワークスペースに開きます。
このコマンドは、対応するコミットに変更を送信します。競合が発生した場合は、対応するマージ操作を実行する必要があります。
###概要######Git は非常に強力なバージョン管理ツールであり、log コマンドも開発には必須のスキルです。ログレコードを削除する必要がある場合は、上記の方法を使用できます。ただし、これらの操作を実行する前に、不必要なリスクを回避するために慎重に検討する必要があります。コミット レコードを削除すると、Git 内のコードの整合性と一貫性が失われるため、多大なトラブルや損失が発生する可能性があります。 ###以上がGit でログを削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。