問題タブ [git-revert]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
git - 単一のファイルに加えられた変更を元に戻すためにコミットを修正する最も簡単な方法は何ですか?
現在、私がそれをしなければならないとき、私が従う手順は次のとおりです。
- コミットを元に戻します (もちろん、新しいコミットを作成せずに)
- 元に戻したいファイルの 1 つを除いて、「元に戻す」によって導入されたすべての変更をリセットします。
- 元に戻したいファイルの反転をステージングし、最後のコミットを修正します
それを行うためのより簡単な方法はありますか?
git - これはgitのものを元に戻すための良い戦略ですか?
これまで、マスターブランチに何か間違ったことをコミットしてプッシュした場合、それを解決する方法は、gitログが次のようになっていると仮定します。
私が過去の状況を「解決」した方法は次のとおりでした:
はい、それは機能します...しかし、コミット履歴を効果的に削除するため、あまりエレガントには見えませんでした。
それで、私のエゴを破壊した状況の後、私はより良い方法をチェックし、git revertのものを出しました、本質的に私は今使っています
git revertは3つのコミット(元に戻されたハッシュごとに1つ)を作成します。その後、リモートを更新するためにプッシュが必要です。
さて、質問は、この戦略は正しいですか?リポジトリの履歴はトランク化されていないため、リセットよりもはるかに良く見えます。最終的に誰かが問題が発生した理由を確認したい場合は、いつでも実行できます。
この推論は正しいですか、それとも私はまだ基本的な概念を欠いていますか?
ありがとう
git - strategy=ours を使用したマージを元に戻す方法は?
私は数週間前にマージが実行されたリポジトリで作業していますが、フラグを使用していることを発見したばかりで--strategy=ours
( --strategy-option=ours フラグを使用することになっていました)、HEAD に変更を適用していません。ただし、変更を適用する必要があります。Git はすでにブランチがマージされていることを認識しており、ブランチの履歴にコミットされています。
この種のマージは、次を使用して元に戻すことはできませんgit revert -m ...
ファイルを変更するためにマージを元に戻したり再適用したりする適切な方法は何ですか?
(F)
このシナリオでは、マージ コミットが原因です。
git - EGit は、typechanges を使用して git リポジトリをスパムします
Suse 11.0 で git バージョン 1.8.0.1 の Eclipse Egit を使用しています。例: 2.1.0
Egit で gerrit からリポジトリのクローンを作成すると、/>git status
...
typechange: src/TestPorts/TELNET/XXX.xxx ... に多くの typechanges が表示され
ます ...
コマンドlessを使用してファイルの内容を表示します。
../../../TestPorts/TELNET/XXX.xxx ~
~
~
~
~
~
~
したがって、これらの変更を git reset --hard で元に戻すと、Egit でステージングされていない変更が発生します。ステージングされていないファイルは、git ステータスにあったものと同じです。そして、これらのファイルを Eclipse で元に戻すと、git で問題が再び発生します。
これに関する経験はありますか?ありがとう
git - 元にコミットされた git merge を適切に元に戻す
私のブランチの歴史は次のとおりです。
ここで、ブランチ 558 とのマージを元に戻したいと思います。それは sha コードなので、次のようにしています。
git revert -m 1 1784adf300f43fb76391e92f80be01132eddb680
結果は次のとおりです。
[master d51e2b3] Revert "Merge branch '558'"
1 files changed, 15 insertions(+), 29 deletions(-)
この時点で元に戻そうとすると558
、マージされたブランチからの最後のコミットのみが元に戻されていることがわかります (マージでは複数のファイルが影響を受けました)。マージされたブランチからすべてのコミットを元に戻すにはどうすればよいですか、それともここで何か間違ったことをしていますか?
git - git の競合を解決しようとする試みを吹き飛ばすにはどうすればよいですか
「production_branch」をチェックアウトしてから、「master_branch for_production_branch」をマージしましたが、大きな競合がありました。「production_branch」は本番環境にデプロイされました。しかし、紛争には、より経験豊富な目が必要です。デプロイできるように、本番ブランチ「production_branch」にクリティカル パッチを取得する必要があります (手動で行います)。
と
簡単な重要な修正を展開できるように、作業ディレクトリの「production_branch」に戻るにはどうすればよいですか。
git - 1 つのファイルでの git checkout の動作はどのようなものですか?
x と y がファイルで、次のようなコミットをいくつか行った場合:
あなたがした場合:
またはを取得しますx
かx+1
?
iphone - gitリポジトリ:Xcodeの外部で以前のファイルバージョンにアクセスできますか
iPhoneアプリのgitリポジトリ設定で、XCodeの外部で最後にコミットされたバージョンのファイルにアクセスする方法はありますか?以前のバージョンをハードドライブのどこかに見つけることができますか、それともファイルを何らかの方法でつなぎ合わせることができますか?現在のバージョンのファイルは破損しています(興味がある場合は、以下のストーリーを参照してください)。前回gitの外部でファイルをバックアップできたときから行った変更を取得したいと思います。XCodeで何かにアクセスしたり、MacでMax OS Xインストーラーで利用できるもの以外のものを実行したりすることができないので、可能であれば以前のバージョンのファイルにアクセスしたいと思います。
最近の6時間のフライトで、私はMACを飛行機に乗せ、この期間中にgitに約2回変更を加えました。飛行の終わりにすべての電子機器をシャットダウンしなければならなくなるまで、MACではすべてが正常に機能していました。その時、MACにシャットダウンするように指示しましたが、代わりにフリーズしました。航空会社の事故を避けたいと思ったので、1分以上待った後、電源ボタンを押したままコンピューターを強制的にシャットダウンしました。
その夜遅くにコンピュータの電源を入れると、起動しなくなり、代わりにAppleのロゴと回転するギアがフリーズしました。インストールディスクを使用してログインをバイパスし、ディスクユーティリティにアクセスしましたが、ドライブの修復に失敗しました。ハードドライブはまだマウントされているので、ファイルにアクセスできます。アプリに必要な絶対に必要なファイルにアクセスしましたが、Windowsマシンで開いたときに、ゴミが含まれていました。もちろん、他のファイルのほとんどはすべて問題ありませんでした:-/
だから、私はまだ私の愚かなMACを修正しようとしていますが、先に進む前に、おそらくドライブをワイプする必要がある前に、私はできる限りすべてのファイルを取得しようとしているので、どんな助けでも間違いなくありがたいです。
git - gitで特定のタイプのファイルへのコミットされていない変更を元に戻す方法
gitリポジトリに多数の変更されたファイルがあり、それらの多くはxmlファイルです。xmlファイルのみの変更を元に戻す(変更をリセットする)にはどうすればよいですか?
git - ブランチを元に戻すと、git describe のタグ名が変更されます
ブランチを元に戻す方法を学びました。それはうまくいきます。問題は、マスターのコミットにタグを付け、git describe
コマンドを使用して最新のタグに基づいて展開を作成することです。コミットを元に戻すと新しいコミットが作成されるため、git describe
コマンドは次のようにコミット修正を含むタグを出力します。
前:
このコミットに「戻る」後:
これを克服する方法はありますか?または、別の方法で最新のタグを取得する必要がありますか?