Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
github
hub
提交
9126d28e
H
hub
项目概览
github
/
hub
11 个月 前同步成功
通知
3
Star
22523
Fork
2406
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
H
hub
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
9126d28e
编写于
1月 23, 2014
作者:
I
Ivan Tse
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
`fork` should fetch from the same "origin" Github URL.
上级
179ef88e
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
20 addition
and
1 deletion
+20
-1
features/fork.feature
features/fork.feature
+14
-0
lib/hub/commands.rb
lib/hub/commands.rb
+2
-1
lib/hub/context.rb
lib/hub/context.rb
+4
-0
未找到文件。
features/fork.feature
浏览文件 @
9126d28e
...
@@ -17,6 +17,20 @@ Feature: hub fork
...
@@ -17,6 +17,20 @@ Feature: hub fork
And "git remote set-url mislav git@github.com
:
mislav/dotfiles.git"
should
be
run
And "git remote set-url mislav git@github.com
:
mislav/dotfiles.git"
should
be
run
And the url for "mislav" should be "git@github.com
:
mislav/dotfiles.git"
And the url for "mislav" should be "git@github.com
:
mislav/dotfiles.git"
Scenario
:
Fork the repository when origin URL is private
Given the "origin" remote has url "git@github.com
:
evilchelu/dotfiles.git"
Given the GitHub API server
:
"""
before { halt 401 unless request.env['HTTP_AUTHORIZATION'] == 'token OTOKEN' }
get('/repos/mislav/dotfiles', :host_name => 'api.github.com') { 404 }
post('/repos/evilchelu/dotfiles/forks', :host_name => 'api.github.com') { '' }
"""
When
I successfully run `hub fork`
Then the output should contain exactly "new remote
:
mislav\n"
And "git remote add -f mislav ssh
:
//git
@github.com/evilchelu/dotfiles.git"
should
be
run
And "git remote set-url mislav git@github.com
:
mislav/dotfiles.git"
should
be
run
And the url for "mislav" should be "git@github.com
:
mislav/dotfiles.git"
Scenario
:
--no-remote
Scenario
:
--no-remote
Given the GitHub API server
:
Given the GitHub API server
:
"""
"""
...
...
lib/hub/commands.rb
浏览文件 @
9126d28e
...
@@ -556,8 +556,9 @@ module Hub
...
@@ -556,8 +556,9 @@ module Hub
if
args
.
include?
(
'--no-remote'
)
if
args
.
include?
(
'--no-remote'
)
exit
exit
else
else
origin_url
=
project
.
remote
.
github_url
url
=
forked_project
.
git_url
(
:private
=>
true
,
:https
=>
https_protocol?
)
url
=
forked_project
.
git_url
(
:private
=>
true
,
:https
=>
https_protocol?
)
args
.
replace
%W"remote add -f
#{
forked_project
.
owner
}
#{
project
.
git
_url
}
"
args
.
replace
%W"remote add -f
#{
forked_project
.
owner
}
#{
origin
_url
}
"
args
.
after
%W"remote set-url
#{
forked_project
.
owner
}
#{
url
}
"
args
.
after
%W"remote set-url
#{
forked_project
.
owner
}
#{
url
}
"
args
.
after
'echo'
,
[
'new remote:'
,
forked_project
.
owner
]
args
.
after
'echo'
,
[
'new remote:'
,
forked_project
.
owner
]
end
end
...
...
lib/hub/context.rb
浏览文件 @
9126d28e
...
@@ -397,6 +397,10 @@ module Hub
...
@@ -397,6 +397,10 @@ module Hub
nil
nil
end
end
def
github_url
urls
.
detect
{
|
url
|
local_repo
.
known_host?
(
url
.
host
)
}
end
def
urls
def
urls
@urls
||=
raw_urls
.
map
do
|
url
|
@urls
||=
raw_urls
.
map
do
|
url
|
with_normalized_url
(
url
)
do
|
normalized
|
with_normalized_url
(
url
)
do
|
normalized
|
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录