【问题标题】:How to use SSH in bash script to download files from bitbucket?如何在 bash 脚本中使用 SSH 从 bitbucket 下载文件?
【发布时间】:2018-09-23 01:02:23
【问题描述】:

在我的工作中, 当前下载自定义 git 预提交挂钩的方法(来自 bitbucket 存储库)在 bash 脚本中使用 curl,如下所示:

$USERNAME$PASSWORD$build_support_url 是先前分配的。

...<some code>...    

# Download templates from http://swbuilds to home dir 
echo "Downloading pre-commit.pl hook"
curl -u $USERNAME:$PASSWORD --fail --show-error --silent --output ~/.git_template/hooks/pre-commit $build_support_url/pre-commit.pl
echo "Downloading prepare-commit-msg.py hook"
curl -u $USERNAME:$PASSWORD --fail --show-error --silent --output ~/.git_template/hooks/prepare-commit-msg $build_support_url/prepare-commit-msg.py
echo "Downloading commit-msg.py hook"
curl -u $USERNAME:$PASSWORD --fail --show-error --silent --output ~/.git_template/hooks/commit-msg $build_support_url/commit-msg.py

# Force the execute bit to be set 
chmod a+x  ~/.git_template/hooks/*

# Also download the customer list used by the pre-commit hook
echo "Downloading customer list"
curl -u $USERNAME:$PASSWORD --fail --show-error --silent --output ~/.git_template/customer_list.txt $build_support_url/customer_list.txt

# Configure Git templates
git config --global init.templatedir '~/.git_template'

...<some more code>...

这将从链接$build_support_url/pre-commit.pl 下载预提交挂钩并将它们放置在~/.git_template 文件夹中。 但是,由于此过程使用curlHTTPS,因此脚本每次运行都需要密码。

为了避免麻烦,我被告知编辑脚本,以便它使用SSH 下载文件(不需要密码)。

关于如何在这个脚本中使用SSH 来获取这些文件有什么建议吗? 谢谢。

PS:我对后端和 API 有一个粗略的了解(并且只知道基本的 HTTP 请求,例如 GET 和 POST。希望能给这种情况提供更多背景信息)。

【问题讨论】:

  • "唯一与 ssh 相关的是" SSL != SSH。
  • 好的,我会编辑我的问题。
  • bitbucket 服务器有你的公钥吗?即您目前可以git clone $build_support_url 或类似的吗?
  • 是的,bit-bucket 服务器有我的公钥。是的,我目前可以使用 ssh 进行 git clone

标签: bash git curl ssh


【解决方案1】:

您可以将您的凭据存储在 ~/.netrc 文件中,以便 curl 将它们用作 explained here

【讨论】:

    【解决方案2】:

    解决方案就是使用'git archive'命令而不是curl

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-26
      • 1970-01-01
      • 2016-06-17
      • 2014-06-21
      • 2015-06-16
      • 1970-01-01
      • 1970-01-01
      • 2018-08-24
      相关资源
      最近更新 更多