summaryrefslogtreecommitdiffstats
path: root/lib/redmine/scm/adapters/git_adapter.rb
diff options
context:
space:
mode:
authorGo MAEDA <maeda@farend.jp>2021-04-23 01:15:52 +0000
committerGo MAEDA <maeda@farend.jp>2021-04-23 01:15:52 +0000
commit45461bfe51e9492d607f7204120f49ce3396a0cf (patch)
tree64d5403cbc089679a61a439ff22d878acaa89057 /lib/redmine/scm/adapters/git_adapter.rb
parent2a3a99796896de8f5a50a060815a0dcf0c5ec808 (diff)
downloadredmine-45461bfe51e9492d607f7204120f49ce3396a0cf.tar.gz
redmine-45461bfe51e9492d607f7204120f49ce3396a0cf.zip
Merged r20962 from trunk to 4.2-stable (#35085).
git-svn-id: http://svn.redmine.org/redmine/branches/4.2-stable@20963 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'lib/redmine/scm/adapters/git_adapter.rb')
-rw-r--r--lib/redmine/scm/adapters/git_adapter.rb12
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/redmine/scm/adapters/git_adapter.rb b/lib/redmine/scm/adapters/git_adapter.rb
index b85bd0296..363476cd4 100644
--- a/lib/redmine/scm/adapters/git_adapter.rb
+++ b/lib/redmine/scm/adapters/git_adapter.rb
@@ -420,6 +420,18 @@ module Redmine
nil
end
+ def valid_name?(name)
+ return false unless name.is_a?(String)
+
+ return false if name.start_with?('-', '/', 'refs/heads/', 'refs/remotes/')
+ return false if name == 'HEAD'
+
+ git_cmd ['show-ref', '--heads', '--tags', '--quiet', '--', name]
+ true
+ rescue ScmCommandAborted
+ false
+ end
+
class Revision < Redmine::Scm::Adapters::Revision
# Returns the readable identifier
def format_identifier