Gerrit 用久了, 就很習慣下 git review -d CHANGE_ID
抓 code 下來 review.
最近剛好有人送了一個 pull request 到我的 GitHub 上, 就想試試看 GitHub 是否有類似的作法.
GitHub 的 pull request 是放在 refs/pull/*
.
若只抓抓單一 pull request 下來 review.
$ git fetch origin pull/PR_ID/head:BRANCHNAME
$ git checkout BRANCHNAME
# e.g.
$ git fetch origin pull/666/head:bug-fix
$ git checkout bug-fix
也可以在 ~/.gitconfig
新增一個 git alias 把兩個指令合成一個
[alias]
pr = "!f() { if [ -z "$2" ]; then git fetch origin pull/${1}/head:pr/${1} && git checkout pr/${1}; else git fetch origin pull/$1/head:$2 && git checkout $2; fi; }; f"
使用方式
$ git pr 666 # Checkout to pr/666 branch
$ git pr 666 bug-666 # Checlout to bug-666 branch
若要在 git fetch
或是 git pull
時把所有的 pull requests 抓下來, 則要在 repos 的 .git/config
做以下設定.
[remote "origin"]
fetch = +refs/pull/*/head:refs/remotes/origin/pr/*
另一方法是用 GitHub Cli, 來做. 等有時間再來玩囉.
Git
GitHub
Written on
February
21st
,
2021
by
Borting