提取并结帐提取请求

时间:2017-07-24 17:14:28

标签: git bitbucket atlassian-sourcetree

我在BitBucket中有一个私有存储库。

团队成员具有对此存储库的读访问权,并向主存储库发出了拉取请求。

我希望能够获取此回购,因此我可以在计算机上查看更改,而无需合并这些更改。

在Google上停留一段时间后,我发现:

https://confluence.atlassian.com/bbkb/how-to-locally-fetch-and-checkout-a-pull-request-724402529.html

它表示将鼠标悬停在新的repo上,URL如下所示。但是,URL不会显示在我的浏览器上。 更新:请注意,我没有任何权限直接访问此存储库!

因此,我的问题是如何从拉取请求中获取存储库而不将其合并到我的主仓库。

如何在SourceTree GUI中执行此操作的信息也会有所帮助。

更新

请注意,git ls-remote origin提供的输出类似于以下内容:

$ git ls-remote origin
35xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx2d        HEAD
35xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx2d        refs/heads/master
36xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx        refs/tags/v1.0.0.0
bdxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx        refs/tags/v2.2.0.0
49xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx        refs/tags/v2.2.0.0^{}

3 个答案:

答案 0 :(得分:2)

你可以尝试

>>> from string import ascii_uppercase as LETTERS
>>> with open('air.txt') as f, open('output.csv', 'wb') as g:
...     actual_date = f.readline().strip()
...     while True:
...         first_line = f.readline().strip()
...         if not first_line: 
...             break
...         second_line = f.readline().strip()
...         third_line = f.readline().strip()
...         fourth_line = f.readline().strip()
...         try:
...             the_time, noun, number = first_line.split(' ')
...         except:
...             print ('invalid input: ', first_line)
...             quit(2)
...         number = int(number)
...         letter = LETTERS[number]
...         new_line = '%s1:%s %s %s %s2:%s %s3:%s %s4:%s %s5:%s' % (letter, the_time, noun, number, letter, second_line, letter, third_line, letter, fourth_line, letter, actual_date)
...         print (new_line)
...         
B1:8:45 apple 1 B2:school B3:ball B4:dog B5:Monday, Jul 24
C1:8:50 poirot 2 C2:rouge C3:chien C4:chat C5:Monday, Jul 24
D1:8:55 football 3 D2:asroma D3:juventus D4:inter D5:Monday, Jul 24

但有一个open issue表示无法按照自己的意愿行事。

https://stackoverflow.com/a/40948201/7976758找到。建议下载PR的补丁并手动申请。

答案 1 :(得分:0)

一旦您可以从本地看到该分支(可能通过添加远程分支),您可以检出该远程分支,以便您可以查看代码是否正常工作等等并决定是否合并。如果你不喜欢它,那就回去看看之前你所在的任何一个分支。

git checkout some-remote/some-branch

答案 2 :(得分:0)

git fetch origin pull/$PR_No/head:$Local_branch

然后;

git checkout $Local_branch 查看不合并的远程拉取请求。