Module: Creategem::Git
Instance Method Summary collapse
- #create_local_git_repository ⇒ Object
- #create_remote_git_repository(repository) ⇒ Object
- #gem_server_url(private) ⇒ Object
- #git_repository_user_name(vendor) ⇒ Object
Instance Method Details
#create_local_git_repository ⇒ Object
7 8 9 10 11 12 |
# File 'lib/creategem/git.rb', line 7 def create_local_git_repository say "Create local git repository", :green run "git init" run "git add ." run "git commit -aqm 'Initial commit'" end |
#create_remote_git_repository(repository) ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/creategem/git.rb', line 14 def create_remote_git_repository(repository) say "Create remote #{repository.vendor} repository", :green if repository.github? token = ask("Please enter your Github personal access token", echo: false) run "curl --request POST --user #{repository.user}:#{token} https://api.github.com/user/repos -d '{\"name\":\"#{repository.name}\", \"private\":#{repository.private?}}'" else # bitbucket password = ask("Please enter yout Bitbucket password", echo: false) fork_policy = repository.public? ? "allow_forks" : "no_public_forks" run "curl --request POST --user #{repository.user}:#{password} https://api.bitbucket.org/2.0/repositories/#{repository.user}/#{repository.name} -d '{\"scm\":\"git\", \"fork_policy\":\"#{fork_policy}\", \"is_private\":\"#{repository.private?}\"}'" end run "git remote add origin #{repository.origin}" say "Push initial commit to remote #{repository.vendor} repository", :green run "git push -u origin master" end |
#gem_server_url(private) ⇒ Object
39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/creategem/git.rb', line 39 def gem_server_url(private) if private git_config_key = "creategem.gemserver" url = ::Git.global_config(git_config_key) if url.nil? || url.empty? url = ask("What is the url of your geminabox server?") ::Git.global_config(git_config_key, url) end url else "https://rubygems.org" end end |
#git_repository_user_name(vendor) ⇒ Object
29 30 31 32 33 34 35 36 37 |
# File 'lib/creategem/git.rb', line 29 def git_repository_user_name(vendor) git_config_key = "creategem.#{vendor}user" user = ::Git.global_config(git_config_key) if user.nil? || user.empty? user = ask("What is your #{vendor} user name?") ::Git.global_config(git_config_key, user) end user end |