版本库ZIP下载
This commit is contained in:
parent
c28c947abc
commit
43f06c0826
|
@ -32,9 +32,9 @@ class RepositoriesController < ApplicationController
|
|||
|
||||
before_filter :find_project_by_project_id, :only => [:new, :create, :newrepo, :stats]
|
||||
before_filter :find_repository, :only => [:edit, :update, :destroy, :committers]
|
||||
before_filter :find_project_repository, :except => [:new, :create, :newcreate, :edit, :update, :destroy, :committers, :newrepo, :to_gitlab, :forked]
|
||||
before_filter :find_project_repository, :except => [:new, :create, :newcreate, :edit, :update, :destroy, :committers, :newrepo, :to_gitlab, :forked, :project_archive]
|
||||
before_filter :find_changeset, :only => [:revision, :add_related_issue, :remove_related_issue]
|
||||
before_filter :authorize , :except => [:newrepo,:newcreate,:fork, :to_gitlab, :forked, :commit_diff]
|
||||
before_filter :authorize , :except => [:newrepo,:newcreate,:fork, :to_gitlab, :forked, :commit_diff, :project_archive]
|
||||
accept_rss_auth :revisions
|
||||
# hidden repositories filter // 隐藏代码过滤器
|
||||
before_filter :check_hidden_repo, :only => [:show, :stats, :revisions, :revision, :diff ]
|
||||
|
@ -95,6 +95,13 @@ class RepositoriesController < ApplicationController
|
|||
|
||||
end
|
||||
|
||||
# 一键ZIP下载
|
||||
def project_archive
|
||||
g = Gitlab.client
|
||||
g.get()
|
||||
# g.project_archive(params[:gpid].to_i, params[:rev])
|
||||
end
|
||||
|
||||
# 判断用户是否已经fork过该项目
|
||||
def has_forked?(project, user)
|
||||
projects = Project.where("user_id =?", user)
|
||||
|
|
|
@ -908,6 +908,7 @@ RedmineApp::Application.routes.draw do
|
|||
get 'projects/:id/repository/changes(/*path(.:ext))', :to => 'repositories#changes'
|
||||
|
||||
get 'projects/:id/repository/forked', :to => 'repositories#forked'
|
||||
get 'projects/:id/repository/project_archive', :to => 'repositories#project_archive', :as => 'project_archive'
|
||||
get 'projects/:id/repository/revisions', :to => 'repositories#revisions'
|
||||
get 'projects/:id/repository/revisions/:rev', :to => 'repositories#revision'
|
||||
get 'projects/:id/repository/revision', :to => 'repositories#revision'
|
||||
|
|
|
@ -137,11 +137,20 @@ class Gitlab::Client
|
|||
end
|
||||
alias_method :repo_commit_diff, :commit_diff
|
||||
|
||||
#Get the commits count of each contributor in a project
|
||||
#@param [Integer] project the ID fo a project.
|
||||
# Get the commits count of each contributor in a project
|
||||
# @param [Integer] project the ID fo a project.
|
||||
# @return [Gitlab::ObjectifiedHash]
|
||||
def contributors(project)
|
||||
get("/projects/#{project}/repository/contributors")
|
||||
end
|
||||
|
||||
# Get an archive of the repository
|
||||
# @param [Integer] project the ID fo a project.
|
||||
# sha (optional) - The commit SHA to download defaults to the tip of the default branch
|
||||
# @return [Gitlab::ObjectifiedHash]
|
||||
def project_archive(project, sha)
|
||||
get("/projects/#{project}/repository/archive?sha=#{sha}")
|
||||
end
|
||||
alias_method :repo_project_archive, :project_archive
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue