[解決済み] git diff ファイルを、同じリポジトリのコピーであるローカルブランチに適用するにはどうすればよいですか?
2022-03-17 10:53:07
質問
同僚が作成した .diff ファイルがあり、その diff ファイルに記載されている変更を、まったく同じリポジトリの私のローカルブランチに適用したいのですが、どうすればよいですか? 私は、このdiffファイルを作成した作業者のPCやブランチにアクセスすることができません。
もちろん、一行ずつ調べてすべてを入力し直すこともできますが、人為的なミスをシステムに負わせたくありません。最も簡単な方法は何でしょうか?
解決方法は?
diffファイルをリポジトリのルートにコピーして、実行してください。
git apply yourcoworkers.diff
の詳細については、こちらをご覧ください。
apply
コマンドは
のマニュアルページ
.
ちなみに ファイル単位でコミット全体を交換するためのより良い方法は、以下のコマンドの組み合わせです。
git format-patch
を送信側で、次に
git am
というのも、著者情報とコミットメッセージも転送されるからです。
パッチの適用に失敗し、差分が生成されたコミットが実際に自分のリポジトリにある場合、そのコミットに対して
-3
のオプションで
apply
で、変更をマージしようとします。
また、以下のようにUnixのパイプでも動作します。
git diff d892531 815a3b5 | git apply
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] 現在のGit作業ツリーからローカル(未追跡)ファイルを削除する方法
-
[解決済み] Git が追跡したファイルを .gitignore に登録したまま「忘れる」ようにするにはどうしたらいいですか?
-
[解決済み] リモート Git リポジトリの URI (URL) を変更するには?
-
[解決済み] 新しいローカルブランチをリモートの Git リポジトリにプッシュし、それを追跡するにはどうすればよいのでしょうか?
-
[解決済み] ローカルの Git リポジトリが元々クローンされた URL を特定するにはどうすればよいですか。
-
[解決済み] Git のリモートブランチを作成する方法を教えてください。
-
[解決済み] ローカルファイルシステムからファイルを削除せずに、Git リポジトリからファイルを削除する
-
[解決済み】ローカルの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エラー - fatal: マージ中に部分コミットができない
-
[解決済み】以下の追跡されていないワーキングツリーファイルは、マージによって上書きされますが、私は気にしません。
-
[解決済み】Githubの認証に失敗した - ... GitHubはシェルアクセスを提供しない
-
[解決済み】gitが「変更をコミットするか、マージする前にstashしてください」と言うのを解決するには?
-
[解決済み] git rebase fatal: 必要なリビジョンは1つです。
-
git push reports an error ! [リモート拒否] master -> master (受信前のフックが拒否されました)
-
Gitのプッシュでエラーが発生! [リモート拒否] master -> master (pre-receive hook declined) error: failed to push s...
-
[解決済み】gitの「not something we can merge」エラーの解決方法
-
[解決済み] ssh-keygen' は内部コマンドまたは外部コマンドとして認識されません。
-
[解決済み] "fatal: This operation must be run in work tree." というメッセージが表示されるのはなぜですか?