the question is basicaly the same as Viewing changes to deleted files in git but for a rebase rather than a merge.
So :
Let's say that when I branch off from master, there's a file colors.txt on the master branch of my repo with these contents:
red
green
blue
yellow
I then branch off into my-branch, in which I make the following changes:
colors.txt
red.txt
with these contents:red
green.txt
with these contents:green
blue.txt
with these contents:blue
yellow.txt
with these contents:yellow
Now, I know some other guy have been doing modification in this file on master, so before going further I decided to rebase onto master. The file colors.txt
has been modified to:
red
green
blue
yellow
orange
purple
During my rebase, the only information I get is that I deleted the file colors.txt
deleted by them: colors.txt
the fact that the message is deleted by them is already confusing, but that's not the question
So how can I see the changes that have been made to the file on master so I can appropriately resolve the conflict (in this case, by adding the files orange.txt and purple.txt)?
I can't use the solution of the linked question because they are merge specific.
so I came up with an alias:
[alias]
deleted-diff = "!git diff \"$1\"..$(git merge-base \"$1\" \"$2\") -- \"$GIT_PREFIX$3\" #"
Usage:
git deleted-diff $1 $2 $3
$1
is the branch on top we are rebasing
$2
is the branch actually rebased
$3
is the name of the file
for your records:
the \"
are used to be procted from dangerous file name or space into them
$GIT_PREFIX
allow the use of relative name for the file