[解決済み] 誤ったブランチへのGitプル
2023-05-30 01:22:45
質問
私ともう一人の開発者は、自分の作業をツールワークと呼ばれるマスターではないブランチにマージしてプッシュしていました。そうすることで、チームの他のメンバーに影響を与えないようにしたのです。私のトピックブランチは DPM-93 と呼ばれ、私の git ワークフローは次のようなものでした。
# do some work
git checkout DPM-93
git commit -m "did some work"
# catch up
git checkout toolwork
git pull origin toolwork
# rebase my topic branch
git checkout DPM-93
git rebase toolwork
# merge and push my changes
git checkout toolwork
git merge --no-ff DPM-93
git push origin toolwork
これは、以下の git コマンドを誤って発行してしまうまでは、ほぼ正常に動作していました。
git checkout toolwork
git pull origin master
その時点で、たくさんの新しいものがブランチツールワークに表示され、ワークスペースを削除してレポから再クローンする以外にそれを取り除く方法がわかりません。
これをプルする前の状態に戻す方法はありますか?
どのように解決するのですか?
git reset --hard ORIG_HEAD
からの
git reset
マンページ
(pullを行っただけの場合)。
マージやプルを元に戻す
$ git pull (1)
Auto-merging nitfol
CONFLICT (content): Merge conflict in nitfol
Automatic merge failed; fix conflicts and then commit the result.
$ git reset --hard (2)
$ git pull . topic/branch (3)
Updating from 41223... to 13134...
Fast-forward
$ git reset --hard ORIG_HEAD (4)
<ブロッククオート
- 上流から更新しようとした結果、多くのコンフリクトが発生しました。今すぐマージに多くの時間を費やす準備ができていなかったので、後で行うことにしました。
-
"
pull
はマージコミットをしていないので、"git reset --hard
と同義語である " を使用します。git reset --hard HEAD
"は、インデックス ファイルと作業ツリーから混乱をクリアします。 - トピック ブランチを現在のブランチにマージし、その結果、早送りが発生しました。
-
しかし、そのトピックブランチはまだ公開する準備ができていないと判断しました。
"pull" または "merge" は常に現在のブランチのオリジナルの先端を残します。ORIG_HEAD
を残すので、これにハードリセットすると、インデックスファイルと作業ツリーがその状態に戻り、ブランチの先端がそのコミットにリセットされます。
参照
HEAD
と
ORIG_HEAD
を追加してください。
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] git pull」と「git fetch」の違いは何ですか?
-
[解決済み] コミット前に 'git add' を取り消すにはどうすればよいですか?
-
[解決済み] リモートのGitブランチをチェックアウトするには?
-
[解決済み] 現在のGit作業ツリーからローカル(未追跡)ファイルを削除する方法
-
[解決済み] git rebase の取り消し
-
[解決済み】"git pull" でローカルファイルを強制的に上書きするには?
-
[解決済み】ローカルリポジトリのブランチをリセットして、リモートリポジトリのHEADと同じにする
-
[解決済み】ローカルのGitブランチの名前を変更するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
git commit to GitHub エラー、プロンプト ! [リモート拒否] master -> master (pre-receive hook declined) エラー: 失敗しました。
-
undefinedmaster -> master (non-fast-forward) と git ! [拒否] master -> master (フェッチファースト)
-
Git error: cannot spawn ssh.の回避策。そのようなファイルやディレクトリはありません
-
git reset --hardとgit reset --softの違いについて
-
[解決済み】ローカルリポジトリのブランチをリセットして、リモートリポジトリのHEADと同じにする
-
[解決済み】GitのHEADとORIG_HEAD
-
[解決済み] 単一のgitコミットに対して設定されたユーザーを上書きする
-
[解決済み] フォルダからサブモジュールのリポジトリを作成し、そのgitコミット履歴を保持する
-
[解決済み] GitHubで、既存のレポを追加するときにすべてのブランチをプッシュするにはどうしたらいいですか?
-
[解決済み] ローカルのGitブランチをリモートレポにコピーする方法