問題タブ [reflog]

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 投票する
2 に答える
1884 参照

git - 復元 - git reset --hard HEAD^

残念ながらgit reset --hard HEAD^、いくつかのファイルで非常に大きなコードのチャンクを失うことが何度かありました。これらのコミットを復元する方法、またはこの場合、HEAD が以前あった場所に転送する方法はありますか?

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

git - リモートリポジトリから目的のコミットのsha1を取得する

を使用するgit reflogと、ユーザーは自分のローカルreflog情報にのみアクセスできますか?

リモートリポジトリから目的のコミットのsha1をどのように確認できますか?

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

git - git reflog. これは適切な使用ですか?

現時点では仮説ですが、ぜひ実践してみたいワークフローです。

すべての Web プロジェクトを開始するためのテンプレートがあります。現在、マスター テンプレートを保存するために github を使用しており、プロジェクトをビルドするたびに単純に複製しています。

問題は、私がより多くのプロジェクトを行うにつれて、テンプレートに役立つ機能があったことですが、現在のワークフローを使用してそれらを配置するのは難しいことです.

私が提案するのは、各プロジェクトの開始時に github からテンプレートを取得し、ローカル ブランチに沿ってプロジェクトをビルドすることです。マスター テンプレートで役立つと思われるものを見つけたら、マスター ブランチに切り替え、そこで変更を実装し、github に送信してから、reflog を使用してそれらの変更を現在のローカル プロジェクトの状態にします。

これは意味がありますか、そして私は(おそらく)reflogのポイントを完全に逃しましたか?

どうもありがとう

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

git - 既存のベアリポジトリにreflogs情報を作成する方法

ご存知かもしれませんが、デフォルトでは、gitは新しいベアリポジトリのreflog更新を有効にしません。問題は、長い履歴リポジトリがありますが、フラグ「logAllRefUpdates」をオンにする前に作成されたため、別のアプリケーションでその情報を機能させたいということです。

既存のリポジトリに最小限の変更を加えるだけで、どうすればそれを実現できますか。非常に簡単な解決策は、私がしたくない新しいコミットをプッシュすることです(!):-)

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

git - 特定のファイルへのすべてのコミットについて git reflog を照会する

特定のファイルへのすべてのコミットについて git reflog を確認することは可能ですか。

ファイル foo.txt にコミットしましたが、git 履歴に表示されなくなりました。

「失われた」コミットを見つけることができるように、reflog を検索してこのファイルへのすべてのコミットを見つけたいと考えています。

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

git - gitreflogの有効期限が切れてgitfsck--unreachable

免責事項:この質問は純粋に情報提供であり、私が経験している実際の問題を表すものではありません。私はそれのために何かを理解しようとしているだけです(私は何かを理解するのが大好きで、あなたもそうしていることを知っているからです)。

だから私はgitで遊んでいて、修正されたコミットを期限切れにしようとしていました。私のreflogは次のようになります。

つまり、2つのコミット(da8534a5a1e68a)を作成し、次に3番目のコミットを。ff576c1で修正しまし4eea1cdた。

予想通り、私のgit log見た目は次のようになります。

私が(私は)コミットの有効期限について知っていることから、いつか(ほとんどの場合、デフォルトで30日以内に)git gc収集する必要がありff576c1ます。今、私はそれが起こるのを見るのに30日待ちたくないので、最初にいくつかのコマンドを実行し始めます:

これは、再び予想されるように、私に与えます:

ff576c1私がその貧しい孤独なコミットを期限切れにするだろうとすべての自信を持って、私はそれから実行しますgit reflog expire

その時、私に与えます:

最初HEADは参照していませんでしたが、前に示しmasterた出力からわかるgit logように、実際には参照しています。また、それをcat .git/HEAD確認します(yelding ref: refs/heads/master)。とにかく、それでもばかげていたのですが4eea1cd、私のmaster支部長です。

ですから、ここで私は、これら2つのコマンドが同じコミットを与えないことをすべて混乱させており、それが私のブランチ4eea1cdの実際の先端であるため、どうして地獄に到達できない可能性があるのか​​疑問に思っています。master

何が起こっているのかについて何か考えはありますか?

編集--rewrite:オプションをに追加するとgit reflog expire、次のようになります。

次に、修正されたコミットのみを取得します。

によると、私はまだ理解していませんgit help reflog

私の場合、これは意味がありません。明らかにそれは何かを変えるので、少なくとも私はそれを理解していません。

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

git - どのコミットがチェリーピックされましたか?

チェリーピック操作でどのコミットが使用されたかを確認するにはどうすればよいですか? git reflog は、cherry-pick がマージされてコミットされた後の結果のコミット Sha-1 のみを表示するようです。その前に元のコミットを見つける必要があります。

なんで?これは、別のブランチへの大きな、しかし間違ったコミットを誤ってチェリーピックしたためです。しかし、コンパイルしてその後に他のコミットを追加するように変更するまで、誰もそれに気づきませんでした。

ここでの目標は、この結果のチェリー ピックを元のものと比較し、それらの違いをパッチとして使用するか、正しいチェリー ピックに手動で同じ変更を加えることです。

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

git - 一連の修正されたコミット (reflog に保存されている) を実際のコミットに変換する方法

私はリファクタリングを行っていましたが、まともな進歩を遂げるたびに修正を続けていました. それは非常に順調に進んでおり、私がこのような大規模なリファクタリングをどのように処理したかを人々に示すことができれば素晴らしいと思いました (多くの小さなステップ、コードを微調整するだけ、すべてのポイントでグリーン テスト スイートを使用)。

コミットはすべて私のreflogにあります。ユーザーが81行目と57行目の集約されたものだけでなく、各ステップを見ることができるように、これらの修正されたコミットのそれぞれを独自の実際のコミットに変える方法はありますか? コミットなどに一意のメッセージは必要ありません。履歴に記録されているだけです。

これはすべてまだ私のローカルレポにあります。

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

git - gitreflogにブランチの変更が表示されない

別の質問で、ユーザーは次のreflogを投稿しました。

HEAD@{25}、ユーザーはテストブランチに切り替えます。ただし、HEAD@{16}では、ユーザーは、テストから開発への事前の移動なしに、開発からコミットに移動します。

reflogに反映されずにブランチを変更するにはどうすればよいですか?このユーザーは特に洗練されているとは思わないので、難解なトリックが使用されたとは思えません。