このファイルがブランチの後に作成された場合、プロジェクトからファイルを削除したマージを見つける方法はありますか?私の問題を再現するには、次の手順を明確にすべき:GitはFILE1 "git merge master -s ours"のために失われたファイルを見つける方法
- のgit initを
- タッチ FILE1 FILE1 -mコミット
- gitのブランチnewbranch "マスターでFILE1を追加しました"
- touchファイル2
- git add file2
- git commit FILE2 -m GitはFILE1 -mをコミット
- FILE1 >>
- は "file1だけにするマスターの変更を" エコー "分岐の後にマスターにFILE2を追加" gitのチェックアウトnewbranchが
- "マスターにFILE1を変更し、" エコー「newbranch変更はFILE3が
- gitの追加我々
- タッチ-s
- gitのマージマスター "newbranchにFILE1を変更し、FILE1
- のgit FILE1 -mをコミット>>" をfile1" するファイル3
- GitはコミットFILE3 -m "マスターでFILE4を追加した" は
- Gitチェックアウトマスターが
- タッチFILE4
- gitのFILE4
- GitがFILE4 -mをコミット
- Gitのマージnewbranchを追加 "newbranchでFILE3を追加しました"
ここで、file2を削除したコミット(マージ)を見つけることができます(この行で起こるマージ/コマンド: "git merge master -s ours")。
編集:私は探していますコミット--graph --format =としてoneline
* 010a604feef300244386490f9c7c777dc9af6b16 Merge branch 'newbranch' |\ | * 3e7f3f6b53c2c92d137fa5a3bac190aa4c3e641f added file3 in newbranch | * b07090c2c6dd5cd2783f3db160f5b6f433beb544 Merge branch 'master' into newbranch | |\ | * | a0053413ab81869574475c0ce889ee721f5ed254 changed file1 in newbranch4 * | | 859e813acd24c2090287ef9d83da339c06f1c754 added file4 in master | |/ |/| * | 0004dc5cfe23874208c6a921f9c7434fcffba8f4 changed file1 in master * | 172d20a93ba40fb040348acc5ffe2ad45803ec22 added file2 in master after branching |/ * 6a59be0a3d4203db84b67c02231c420b518fc349 added file1 in master
- gitのログは次のとおりです。b07090c2c6dd5cd2783f3db160f5b6f433beb544
- gitのログ-g --diff-filter = D - file2 の
リターン:-g --diff-フィルタ= D --followログイン6a59be0a3d4203db84b67c02231c420b518fc349
- gitのコミット - FILE2
リターンを:私の中の不思議な010a604feef300244386490f9c7c777dc9af6b16
をコミット私が問題を発見したリポジトリgit log -g --diff-filter = D - filename私には正しいコミットがありました。
reflogはあなたを助けますか? http://gitready.com/intermediate/2009/02/09/reflog-your-safety-net.html – Sgoettschkes
* git log -g --diff-filter = D - これは例私は私の質問に書いた。しかし、問題が発生した私のgitリポジトリではうまくいきました。 –