問題タブ [git-reset]

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.

0 投票する
15 に答える
932496 参照

git - gitは、コミットされていない、または保存されていないすべての変更を元に戻します

最後のコミット以降のすべての変更を元に戻そうとしています。この投稿を見た後、試しgit reset --hardてみました。ヘッドが18c3773になっていると応答します...しかし、ローカルソースを見ると、すべてのファイルがまだそこにあります。私は何が欠けていますか?git reset --hard HEAD

0 投票する
2 に答える
1398 参照

git - git reset で二重ダッシュ [--] オプションは何をしますか?

次のようなコマンドを見てきました:

このコマンドは、コミット e542 からのファイル readme.txt の内容をインデックスに入れることを理解しています。しかし、--そこで何をしているオプションは何ですか?

git reset のマニュアル ページには、最初の 2 つの形式ではオプションとしてリストされていますが、その意味がわかりませんでした。

0 投票する
3 に答える
338 参照

git - これはgitのものを元に戻すための良い戦略ですか?

これまで、マスターブランチに何か間違ったことをコミットしてプッシュした場合、それを解決する方法は、gitログが次のようになっていると仮定します。

私が過去の状況を「解決」した方法は次のとおりでした:

はい、それは機能します...しかし、コミット履歴を効果的に削除するため、あまりエレガントには見えませんでした。

それで、私のエゴを破壊した状況の後、私はより良い方法をチェックし、git revertのものを出しました、本質的に私は今使っています

git revertは3つのコミット(元に戻されたハッシュごとに1つ)を作成します。その後、リモートを更新するためにプッシュが必要です。

さて、質問は、この戦略は正しいですか?リポジトリの履歴はトランク化されていないため、リセットよりもはるかに良く見えます。最終的に誰かが問題が発生した理由を確認したい場合は、いつでも実行できます。

この推論は正しいですか、それとも私はまだ基​​本的な概念を欠いていますか?

ありがとう

0 投票する
3 に答える
1591 参照

git - 「git-pull」自動マージ後にコミット メッセージを変更するにはどうすればよいですか?

ときどき、結果 a として自動マージが生成されると、協力者が「パニック」になりgit-pull、デフォルトのコミット メッセージをそのまま受け入れることがあります。このコミットがプッシュされる前に、メッセージが修正されることを確認したいのですが、--amendうまくいかないようです。このシナリオで生成されたメッセージを修正する最善の方法は何ですか? 私が彼らのために思いつくことができる最善の指示は

しかし、それは少し怖く ( reset)、エラーが発生しやすいようです (リモート追跡ブランチを明示的に入力する必要があります)。

リモート追跡リポジトリとマージして生成されたばかりのコミット メッセージを変更する簡単な方法はありますか? なぜ機能しない--amendのですか?

0 投票する
1 に答える
45 参照

git - コミットを保持したまま作業ディレクトリを元に戻す

これは非常に簡単な質問かもしれません。作業をコミットしてから、検索と置換スクリプトを起動しましたが、それを元に戻したいので、作業を実際のコミットに落とし込みます。それを行うための正しいコマンドは何ですか: git reset soft/hard または git amend については知っていますが、適切ではありません

0 投票する
9 に答える
193300 参照

git - サブディレクトリを git reset --hard する方法は?

UPDATE² : Git 2.23 (2019 年 8 月) では、これを行う新しいコマンドがあります。受け入れられた回答git restoreを参照してください。

更新:これはGit 1.8.3の時点でより直感的に機能します。私自身の回答を参照してください。

次の使用例を想像してみてください: Git 作業ツリーの特定のサブディレクトリにあるすべての変更を取り除き、他のすべてのサブディレクトリはそのままにしたいと考えています。

この操作に適した Git コマンドは何ですか?

以下のスクリプトは、この問題を示しています。How to make filesコメントの下に適切なコマンドを挿入します。現在のコマンドはa/c/ac、スパース チェックアウトによって除外されるはずのファイルを復元します。明示的に復元したくないことに注意してくださいa/aand a/b、私は「知っている」だけで、a以下のすべてを復元したい. EDIT:そして、私は「知らない」b、または他のどのディレクトリが と同じレベルにあるかも知りませんa

0 投票する
2 に答える
440139 参照

git - git reset --hard origin/master の意味は何ですか?

私はやったgit pullとエラーが発生しました:

次の作業ツリー ファイルは、マージによって上書きされます... マージする前に、それらを移動または削除してください。

これを解決するために、次のことを行いました。

今私がするときgit pull、それはすべて最新だと言います。これらのコマンドを実行すると正確に何が起こるか知りたいです。git fetchローカル リポジトリにマージせずに、リモート リポジトリから変更をフェッチすることはわかっています。

とはどういう意味git reset --hard origin/masterですか? それはどのように機能しますか?

0 投票する
1 に答える
6424 参照

netbeans - netbeans で git reset を使用するには?

NetBeans での最後のコミットを元に戻したいです。

コマンドが '$ git reset --soft HEAD~' であることがわかりましたが、NetBeans7 IDE でそれを行うにはどうすればよいですか?

0 投票する
1 に答える
2949 参照

git - リセット後にGitコミットが失われました--hard。fsckで見つからず、reflogでも見つかりません

いくつかのコミットされていないファイルの作業ディレクトリをクリアしたかったのですが、誤って実行されましgit reset --hardた。

以前の(プッシュされていない)コミットを失ったことに気付いたので、実行しましgit reset --hard ORIG_HEADた。これは私の失われたコミットに私を連れて行かなかった。

実行git reflogしましたが、コミットがそこにリストされていませんでした。私も実行しgit fsck --lost-foundましたが、リストにコミットはなく、無関係なブロブとツリーがいくつかありました。

失われたコミットの参照が見つからないため(.git/COMMIT_EDITMSG関連するコミットメッセージと変更のリストがまだあるものを除いて)、コミットを回復する方法がわかりません。

失われたコミットを取り戻す方法はありますか、それとも一晩中準備をする必要がありますか?

0 投票する
4 に答える
11899 参照

git - Git リセットが機能しない

コミットを行い、いくつかの変更をプルしてマージし、2 回目のコミットを行いました。最初のコミットに戻りたいとき、コマンドを実行しました

応答は「HEAD is now at <sha hash>」でしたが、コードはコマンドを実行する前と同じように見えます。通常は以前と同じように変更されますが、何かが正しく機能していないようです。ヘッドをリセットする前に、別のコマンドを実行してマージを解除する必要がありますか?


追加情報

実行git statusすると、次のように表示されます。

app/assets/images/.DS_Store.orig は追跡されていません

追加できます。

によるとgit reflog、ハッシュ1をコミットする前にプルしました(「マージ前」と見なします)。プル用の sha hash2 があります (表示されgit logませんでした)。hash1 と hash2 を掘り下げると、行った変更が表示され、そこから元のコードを再構築できました。それでも、これは非常に奇妙に思えます。それらのいずれかにしようとするgit resetと、マージ前からコードを取得できません。