ホームページ 開発ツール Git gitでコミットをキャンセルする方法

gitでコミットをキャンセルする方法

Nov 29, 2021 pm 03:15 PM
git

git でコミットをキャンセルする方法: 1. "git rm" コマンドを使用して元に戻します; 2. "git replace" コマンドを使用して元に戻します; 3. "git rebase" コマンドを使用して元に戻します; 4 「git revert」コマンドを使用して元に戻します。

gitでコミットをキャンセルする方法

このチュートリアルの動作環境: Windows 7 システム、Git バージョン 2.30.0、Dell G3 コンピューター。

間違ったコードを送信し、特定のコミット レコードを取り消す必要がある場合があります。いくつかの方法があります:

1. ファイルを削除します

削除する必要があるコミットが 1 つ以上のファイルである場合は、次の操作を実行できます。

1. ウェアハウスに送信されたファイルを削除する必要がある場合は、git rm コマンドを使用できます:

git rm <file> // 从工作区和暂存区删除某个文件
git commit -m "" // 再次提交到仓库
ログイン後にコピー

2.ファイルを一時記憶領域から削除します。ローカル ワークスペースに変更を加えない場合は、次のことができます:

git rm --cached <file>
ログイン後にコピー

3. ワークスペース内のファイルを誤って削除した場合は、git checkout## を使用できます。 # 一時記憶領域のファイルを上書きします。誤って削除されたファイルを回復する領域のファイル:

git checkout -- <file>
ログイン後にコピー
4. ファイルを削除するには、

git rm を使用します。削除操作も同様に行われます。ファイルを削除すると、ローカルの物理ファイルのみが削除され、git レコードからは削除されません。

5、

git addgit rm

には同様の機能があります。

ただし、git add は追加のみを記録できます。変更します。アクションと削除アクションは git rm

によって完了する必要があります。

2. GitHub はコミットを取り消します

ファイルだけでなくインターリーブされたコードも削除する必要がある場合は、次の方法があります。コミットを削除するには 3 つの方法があります。 1. gitリセット

gitリセット: 特定のコミットまでロールバックします。

  • git replace --soft: この送信後の変更はステージング領域に返されます。
  • git restart --hard: この送信後、変更は保持されません。 git status
  • ワークスペースを表示しても記録がありません。
  • 1) ロールバック コード削除する必要があるコミットが最新の場合は、
  • git restart## を使用してコードを以前のコミットにロールバックできます。 # コマンドのステータスを確認しますが、必ず既存のコードをバックアップしてください。そうしないと、これらの変更はロールバック後に消えてしまいます。具体的な操作は次のとおりです。
git log // 查询要回滚的 commit_id
git reset --hard commit_id // HEAD 就会指向此次的提交记录
git push origin HEAD --force // 强制推送到远端
ログイン後にコピー

2) 誤って削除した場合の回復

コードをロールバックした後に間違った commit_id をコピーした場合、または誤ってコミット レコードを削除した場合は、次のことができます。また、次のコードを使用して復元します。<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">git relog // 复制要恢复操作的前面的 hash 值 git reset --hard hash // 将 hash 换成要恢复的历史记录的 hash 值</pre><div class="contentsignin">ログイン後にコピー</div></div>

注: 途中で特定のコミットを削除する場合、リモート ライブラリをロールバックするために

git replace

を使用しないことをお勧めします。後で他の人がコードを送信するときに

git pull

を使用することになります。また、ローカル ウェアハウスを以前のバージョンにロールバックするため、エラーが発生しやすく、不必要なワークロードが増加します。
  1. 2. git rebase

git rebase: 2 つのブランチが同じ行にない場合、マージ操作を実行する必要があります このコマンドを使用します。

    1) コミットを元に戻す
  • 途中の特定のコミットを削除する必要がある場合は、git rebase
  • コマンドを使用できます。方法は次のとおりです。以下:
git log // 查找要删除的前一次提交的 commit_id
git rebase -i commit_id // 将 commit_id 替换成复制的值
进入 Vim 编辑模式,将要删除的 commit 前面的 `pick` 改成 `drop`
保存并退出 Vim
ログイン後にコピー

これで完了です。

2) 競合を解決するこのコマンドを実行するとリベースの競合が発生する可能性が高く、次の方法で解決できます:

git diff // 查看冲突内容
// 手动解决冲突(冲突位置已在文件中标明)
git add <file> 或 git add -A // 添加
git rebase --continue // 继续 rebase
// 若还在 rebase 状态,则重复 2、3、4,直至 rebase 完成出现 applying 字样
git push
ログイン後にコピー

3、git revert

git revert: コミットを破棄します。

git revert
    以前の送信は git ログに残り、この取り消しは新しい送信として扱われます。
  • git revert -m
    : マージ ノードの操作に使用されます。-m は特定の送信ポイントを指定します。
  • 1) コミットを取り消す
  • コミットを途中で取り消したい場合は、git revert
  • を使用することも良い選択です:
git log // 查找需要撤销的 commit_id
git revert commit_id  // 撤销这次提交
ログイン後にコピー

2) マージ ノードの送信を元に戻します。

この送信がマージ ノードの場合は、-m コマンドを追加する必要があります:

git revert commit_id -m 1 // 第一个提交点
// 手动解决冲突
git add -A
git commit -m ""
git revert commit_id -m 2 // 第二个提交点
// 重复 2,3,4
git push
ログイン後にコピー

推奨学習: "

Git チュートリアル

>>

以上がgitでコミットをキャンセルする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Grayscale Encryption Trust Fundsとは何ですか? Grayscale Encryption Trust Fundsとは何ですか? Mar 05, 2025 pm 12:33 PM

グレイスケール投資:機関投資家が機関や投資家にデジタル通貨投資サービスを提供するための機関投資家が入国します。同社はいくつかの暗号信託を立ち上げました。これは広範な市場の注目を集めていますが、これらの資金のトークン価格に対する影響は大きく異なります。この記事では、Grayscaleの主要なCrypto Trust Fundsの一部を詳細に紹介します。 Grayscale Major Crypto Trust Fundsは、Grayscale Investment(2013年にDigitalCurrencyGroupによって設立された)で利用可能なさまざまなCrypto Asset Trust Fundsを管理し、機関投資家と順応の高い個人を提供する投資チャネルを提供します。その主な資金には、ZCASH(ZEC)、SOL、

ビットワイズ:企業はビットコインを無視された大きな傾向を購入します ビットワイズ:企業はビットコインを無視された大きな傾向を購入します Mar 05, 2025 pm 02:42 PM

毎週の観察:ビットコインを蓄えている企業 - 醸造の変化毎週のメモの見落とされがちな市場動向をよく指摘します。 MicroStrategyの動きは厳しい例です。多くの人は、「マイクロストラテジーとマイケルセイリャーはすでによく知られていますが、これは真実ですが、多くの投資家はそれを特別なケースと見なし、その背後にあるより深い市場の力を無視しています。このビューは片側です。ここ数ヶ月の予備資産としてのビットコインの採用に関する詳細な研究は、これが孤立したケースではなく、出現している主要な傾向であることを示しています。今後12〜18か月で、何百もの企業が訴訟を起こし、大量のビットコインを購入すると予測しています

SFTを大幅に超えて、O1/DeepSeek-R1の背後にある秘密は、マルチモーダルの大規模モデルでも使用できます SFTを大幅に超えて、O1/DeepSeek-R1の背後にある秘密は、マルチモーダルの大規模モデルでも使用できます Mar 12, 2025 pm 01:03 PM

上海ジョトン大学、上海アイラブ、および香港中国大学の研究者は、Visual Language Big Model(LVLM)のパフォーマンスを大幅に改善するために少量のデータのみを必要とする視覚RFT(視覚エンハンスメントファインチューニング)オープンソースプロジェクトを開始しました。 Visual-RFTは、DeepSeek-R1のルールベースの強化学習アプローチとOpenAIの強化微調整(RFT)パラダイムを巧みに組み合わせて、このアプローチをテキストフィールドから視野に拡張しました。視覚的サブカテゴリ化やオブジェクト検出などのタスクの対応するルール報酬を設計することにより、Visual-RFTは、テキスト、数学的推論、その他のフィールドに限定されているDeepSeek-R1メソッドの制限を克服し、LVLMトレーニングの新しい方法を提供します。 Vis

GOの浮動小数点番号操作に使用されるライブラリは何ですか? GOの浮動小数点番号操作に使用されるライブラリは何ですか? Apr 02, 2025 pm 02:06 PM

GO言語の浮動小数点数操作に使用されるライブラリは、精度を確保する方法を紹介します...

GOのどのライブラリが大企業によって開発されていますか、それとも有名なオープンソースプロジェクトによって提供されていますか? GOのどのライブラリが大企業によって開発されていますか、それとも有名なオープンソースプロジェクトによって提供されていますか? Apr 02, 2025 pm 04:12 PM

大企業または有名なオープンソースプロジェクトによって開発されたGOのどのライブラリが開発されていますか? GOでプログラミングするとき、開発者はしばしばいくつかの一般的なニーズに遭遇します...

海外バージョンの配送地域データを取得する方法は?利用可能な既製のリソースは何ですか? 海外バージョンの配送地域データを取得する方法は?利用可能な既製のリソースは何ですか? Apr 01, 2025 am 08:15 AM

質問の説明:海外バージョンの配送地域データを取得する方法は?既製のリソースはありますか?国境を越えた電子商取引またはグローバル化ビジネスで正確に入手してください...

Giteeページ静的なWebサイトの展開に失敗しました:単一のファイル404エラーをトラブルシューティングと解決する方法 Giteeページ静的なWebサイトの展開に失敗しました:単一のファイル404エラーをトラブルシューティングと解決する方法 Apr 04, 2025 pm 11:54 PM

GiteEpages静的Webサイトの展開が失敗しました:404エラーのトラブルシューティングと解像度Giteeを使用する

Binance LaunchPoolとは何ですか? Binance LaunchPoolに参加する方法は? Binance LaunchPoolとは何ですか? Binance LaunchPoolに参加する方法は? Mar 05, 2025 pm 03:06 PM

Binance LaunchPool詳細分析:高利回りの採掘ガイドとバイオプロジェクトの詳細な説明は、Binance LaunchPoolの詳細な議論を行い、その利回りを分析し、参加方法を詳細に説明し、最新のプロジェクトBio Coin(BIOL)の導入に焦点を当てます。世界最大の暗号通貨交換として、BinanceはLaunchPoolで高品質のプロジェクトを選択し、投資家に新しい鉱業と新しいトークンを取得する機会を提供しました。 Binance LaunchPoolとは何ですか? Binance LaunchPoolは、指定された通貨を誓約することで、新しいトークンを無料で獲得するプラットフォームです。これは、株式市場の新しい株式サブスクリプションに似ていますが、参加者は少なくなり、競争が少なくなり、少額の投資も高い収益を得ることができます。

See all articles