我拥有回购。有人发了一份PR,我还没有合并。我想看到与VSCode中的master
分支相比,该PR的所有更改。这类似于您做了一些更改,但这些更改处于未提交状态)。我该怎么做呢?
我跟着我怎么能检查出GitHub拉请求与git?但没有找到我需要的答案。例如,命令git pull origin pull/939/head
将合并更改,而不是显示为未提交的更改。
成功了
所以,我的完整流程是:check PR (100) in 'detached HEAD' state
git fetch origin pull/100/head && git checkout FETCH_HEAD
显示为未提交的更改
git reset main
切换回主分支并携带这些更改
git switch -
另外,制作了一个方便的powershell函数
<# USE CASE
> gitpr
gives list of active PRs
> gitpr 12
checks out PR #12
#>
function gitpr {
param(
[Parameter(ValueFromRemainingArguments = $true)]
[String[]] $prNum
)
if($prNum){
git fetch origin pull/"$prNum"/head && git checkout FETCH_HEAD
git reset main
git switch -
echo "checked out PR: "$prNum""
}else{
gh pr list
}
}
首先,您必须获取PRgit fetch origin pull/<pr_id>/head:new_branch
现在您在new_branch
git diff new_branch ^HEAD | git apply -
git diff <another-branch> ^HEAD
这将打印new_branch
和当前分支(HEAD)之间变化的差异。git apply -
,这将应用这些更改到当前索引。