Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
029fb98b
G
gitlab-foss
项目概览
李少辉-开发者
/
gitlab-foss
通知
15
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
gitlab-foss
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
029fb98b
编写于
8月 09, 2017
作者:
L
Lin Jen-Shin
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Detect if we didn't create the ref sooner
上级
cb308689
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
25 addition
and
1 deletion
+25
-1
app/models/repository.rb
app/models/repository.rb
+4
-1
spec/models/repository_spec.rb
spec/models/repository_spec.rb
+21
-0
未找到文件。
app/models/repository.rb
浏览文件 @
029fb98b
...
...
@@ -999,7 +999,7 @@ class Repository
yield
(
commit
(
branch_name_or_sha
))
ensure
rugged
.
references
.
delete
(
tmp_ref
)
if
tmp_ref
rugged
.
references
.
delete
(
tmp_ref
)
if
tmp_ref
&&
ref_exists?
(
tmp_ref
)
end
def
add_remote
(
name
,
url
)
...
...
@@ -1022,6 +1022,9 @@ class Repository
def
fetch_ref
(
source_path
,
source_ref
,
target_ref
)
args
=
%W(fetch --no-tags -f
#{
source_path
}
#{
source_ref
}
:
#{
target_ref
}
)
run_git
(
args
)
# Make sure ref was created, and raise Rugged::ReferenceError when not
raise
Rugged
::
ReferenceError
unless
ref_exists?
(
target_ref
)
end
def
create_ref
(
ref
,
ref_path
)
...
...
spec/models/repository_spec.rb
浏览文件 @
029fb98b
...
...
@@ -961,6 +961,27 @@ describe Repository, models: true do
end
end
context
'when temporary ref failed to be created from other project'
do
let
(
:target_project
)
{
create
(
:project
,
:empty_repo
)
}
before
do
expect
(
target_project
.
repository
).
to
receive
(
:run_git
)
end
it
'raises Rugged::ReferenceError'
do
raise_reference_error
=
raise_error
(
Rugged
::
ReferenceError
)
do
|
err
|
expect
(
err
.
cause
).
to
be_nil
end
expect
do
GitOperationService
.
new
(
user
,
target_project
.
repository
)
.
with_branch
(
'feature'
,
start_project:
project
,
&
:itself
)
end
.
to
raise_reference_error
end
end
context
'when the update adds more than one commit'
do
let
(
:old_rev
)
{
'33f3729a45c02fc67d00adb1b8bca394b0e761d9'
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录