[解決済み】git stashで追加されたファイルを強制的に上書きする方法
2022-03-29 02:08:38
質問
gitで追跡されていないファイルがいくつかあります。 いくつか変更を加えてコミットしようとしたのですが、最初に未変更のファイルをチェックインするのを忘れていたことに気づきました。 そこで、ファイルを隠しておいてから、未修正のバージョンを追加しました。
その後、リポジトリにstashを適用すると、ファイルがすでに追加されているためにコンフリクトが発生します。
どうすれば、隠し場所を適用し、リポジトリ内のオリジナルよりも隠し場所のバージョンを優先して使用するようにできますか?
ありがとうございます。
解決方法は?
使用方法
git checkout
の代わりに
git stash apply
:
$ git checkout stash -- .
$ git commit
これは、カレントディレクトリにあるすべてのファイルを、隠したバージョンに復元します。
作業ディレクトリ内の他のファイルに対する変更で、保持すべきものがある場合、あまり強引ではない代替案があります。
$ git merge --squash --strategy-option=theirs stash
インデックスに変更がある場合、あるいはローカルに変更があるファイルにマージを行う場合、git はマージを拒否します。個々のファイルを隠し場所からチェックアウトするには
$ git checkout stash -- <paths...>
を使うか、インタラクティブに
$ git checkout -p stash
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] git pull」と「git fetch」の違いは何ですか?
-
[解決済み] コミット前に 'git add' を取り消すにはどうすればよいですか?
-
[解決済み] リモートのGitブランチをチェックアウトするには?
-
[解決済み] 現在のGit作業ツリーからローカル(未追跡)ファイルを削除する方法
-
[解決済み] ステージングされた変更を表示するにはどうしたらいいですか?
-
[解決済み] Gitで落としたスタッシュを復元する方法とは?
-
[解決済み】"git pull" でローカルファイルを強制的に上書きするには?
-
[解決済み】ローカルの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 revert 複数コミット
-
[解決済み】マージが終了していません(MERGE_HEADは存在します)。
-
[解決済み] git stashを元に戻す
-
[解決済み] GIT_DISCOVERY_ACROSS_FILESYSTEM が設定されていない。
-
[解決済み] ブラウンアウトの一環として、パスワード認証が一時的に無効になっています。代わりに個人用アクセストークンを使用してください[重複]。
-
[解決済み] git でディレクトリ階層が異なる 2 つのブランチをマージするには?
-
[解決済み] git initを2回実行すると、リポジトリが初期化されますか?それとも既存のリポジトリを再初期化しますか?
-
[解決済み] git stash pop で stash エントリから未追跡のファイルを復元できなかったと表示されるのはなぜですか?
-
[解決済み] Git stash pop - マージが必要、インデックスをリフレッシュできない