在变基期间查看 git 中已删除文件的更改
Viewing changes to deleted files in git during rebase
这个问题与 基本相同,但针对的是变基而不是合并。
所以:
假设当我从 master 分支出来时,我的 repo 的 master 分支上有一个文件 colors.txt,其中包含以下内容:
red
green
blue
yellow
然后我分支到我的分支,我在其中进行了以下更改:
- 删除
colors.txt
- 添加
red.txt
内容如下:
red
- 添加
green.txt
内容如下:
green
- 添加
blue.txt
内容如下:
blue
- 添加
yellow.txt
内容如下:
yellow
现在,我知道其他人一直在修改 master 上的这个文件,所以在继续之前我决定变基到 master 上。文件 colors.txt
已修改为:
red
green
blue
yellow
orange
purple
在我的 rebase 过程中,我得到的唯一信息是我删除了文件 colors.txt
deleted by them: colors.txt
消息被他们删除的事实已经令人困惑,但这不是问题
那么我如何才能看到对 master 上的文件所做的更改,以便我可以适当地解决冲突(在这种情况下,通过添加文件 orange.txt 和 purple.txt)?
我不能使用链接问题的解决方案,因为它们是特定于合并的。
所以我想出了一个别名:
[alias]
deleted-diff = "!git diff \"\"..$(git merge-base \"\" \"\") -- \"$GIT_PREFIX\" #"
用法:
git deleted-diff
</code> 是我们正在变基的顶部分支</p>
<p><code>
是实际变基的分支
</code>是文件名</p>
<p>供您记录:</p>
<p><code>\"
用于防止危险文件名或space进入其中
$GIT_PREFIX
允许对文件使用相对名称
这个问题与
所以:
假设当我从 master 分支出来时,我的 repo 的 master 分支上有一个文件 colors.txt,其中包含以下内容:
red
green
blue
yellow
然后我分支到我的分支,我在其中进行了以下更改:
- 删除
colors.txt
- 添加
red.txt
内容如下:
red
- 添加
green.txt
内容如下:
green
- 添加
blue.txt
内容如下:
blue
- 添加
yellow.txt
内容如下:
yellow
现在,我知道其他人一直在修改 master 上的这个文件,所以在继续之前我决定变基到 master 上。文件 colors.txt
已修改为:
red
green
blue
yellow
orange
purple
在我的 rebase 过程中,我得到的唯一信息是我删除了文件 colors.txt
deleted by them: colors.txt
消息被他们删除的事实已经令人困惑,但这不是问题
那么我如何才能看到对 master 上的文件所做的更改,以便我可以适当地解决冲突(在这种情况下,通过添加文件 orange.txt 和 purple.txt)?
我不能使用链接问题的解决方案,因为它们是特定于合并的。
所以我想出了一个别名:
[alias]
deleted-diff = "!git diff \"\"..$(git merge-base \"\" \"\") -- \"$GIT_PREFIX\" #"
用法:
git deleted-diff
</code> 是我们正在变基的顶部分支</p>
<p><code>
是实际变基的分支
</code>是文件名</p>
<p>供您记录:</p>
<p><code>\"
用于防止危险文件名或space进入其中
$GIT_PREFIX
允许对文件使用相对名称