2017-06-13 66 views
0

這裏是場景:我可以克隆github回購與PR代碼「虛擬」合併

我擁有一個github回購。有人創建並提交PR。沒有合併衝突。我想克隆PR和我的回購的「最終結果」用於測試目的。

這可能嗎?我知道我可以克隆PR回購和分支,但不能保證我克隆的是實際的PR請求(他們在提交PR後可能會做出其他更改)。

基本上,在GitHub中查看代碼本身並不夠好 - 我需要在本地機器上運行和測試它。我怎麼做?

感謝, 弗拉基米爾

+0

製作另一個回購(可能甚至是專用用戶)專門測試你正在構建的這個Github工具,測試它。那麼就不存在外部干擾。你可以做任何你想要的回購,包括吹掉它,並重新創建每一個測試,以確保測試是孤立的,它處於已知的良好狀態。而且您不必將生產API代碼放入測試中。 – Schwern

回答

1

你可以簡單地克隆PR回購和分支。 PR中引發的任何改變都會自動反映在PR中。

在GitHub的PR頁,它說,PR的作者可以通過推到分支對他/她的叉子

+0

這就是我想要避免的:「關於哪個PR被引發的分支所做的任何更改都會自動反映到PR中。」 – Vladimir

+0

當您克隆PR repo(或僅抓取遠程分支)時,您將獲得快照。除非您再次抓取,否則不會更新。 –

+0

沒錯,但我不知道我會從github合併的是我在本地測試的東西,除非我做另一個git pull ...只是在尋找一種方法來鎖定版本 – Vladimir

0

你甚至都不需要克隆添加更多的提交 - 只是用樹枝。提交當前的工作,創建一個新的分支,切換到該分支,將PR提交到本地回購(PR也只是一個分支),運行測試。如果一切正常 - 切換回開發分支,刪除測試分支,在Github合併PR並拉動。

例子。假設當前分支是主分支,並且您想要測試Pull Request#42。提交當前的工作並創建一個分支: git checkout -b test-42。拉和合並PR:git pull origin pull/42/head。運行測試。切換回主站和除去試驗分支:

git checkout master 
git branch -D test-42 

合併拉請求在Github上拉:git pull origin master