【发布时间】: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 文件夹中。
但是,由于此过程使用curl 和HTTPS,因此脚本每次运行都需要密码。
为了避免麻烦,我被告知编辑脚本,以便它使用SSH 下载文件(不需要密码)。
关于如何在这个脚本中使用SSH 来获取这些文件有什么建议吗?
谢谢。
PS:我对后端和 API 有一个粗略的了解(并且只知道基本的 HTTP 请求,例如 GET 和 POST。希望能给这种情况提供更多背景信息)。
【问题讨论】:
-
"唯一与 ssh 相关的是" SSL != SSH。
-
好的,我会编辑我的问题。
-
bitbucket 服务器有你的公钥吗?即您目前可以
git clone $build_support_url或类似的吗? -
是的,bit-bucket 服务器有我的公钥。是的,我目前可以使用 ssh 进行 git clone