在 shell 脚本中指示 git pull 的密码,无需 ssh?

2024-04-16

我写了一个shell脚本来进行项目发布Git,在shell脚本中我首先cd到 Git 工作副本,然后执行git pull origin master.
但它提示我输入密码:git@localhost's password:,这很烦人,我想知道是否可以指明密码git pull在脚本中,像这样:
git pull origin master --password abcd123
任何想法?


一般来说:不要将密码放入脚本中,特别是不要为它们提供命令参数,因为这意味着它们是通过ps对同一台计算机上的任何人发出命令。

这里的解决方案是使用 ssh 并运行 ssh 代理。当代理尝试通过 SSH 连接到远程端时,代理会加载您的私钥并将其提供给 shell 脚本。这样,您只需将密码提供给代理即可。

这篇博文应该为您提供更多详细信息:使用 OpenSSH 进行无密码登录 http://www.debian-administration.org/articles/152

如果您使用的是 Windows,putty http://www.chiark.greenend.org.uk/~sgtatham/putty/具有相同的功能。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 shell 脚本中指示 git pull 的密码,无需 ssh? 的相关文章

  • 为什么我无法使用 git push origin :branchname 删除远程 git 分支?

    当我尝试推送到远程 git 分支以删除它时git push origin branchname我收到以下错误消息 错误 无法推送到不合格的目的地 remotes origin branchname 目标引用规范既不匹配远程上的现有引用 也不
  • 是否可以从一个存储库中拉取并推送到另一个存储库?

    我在 github 上有一个公开的存储库 在那里我有一个正在开发的开源应用程序 用于制作产品目录和小型 cms 内容 我还有一个私有存储库 未托管在 github 中 它是在 github 中托管的开源应用程序下开发的应用程序 由于我目前正
  • 在轮询 SCM 时将 ssh-agent 与 jenkins 结合使用

    我使用 Jenkins ssh agent 插件来为我的构建提供 ssh 凭证 该凭证运行良好 但是我将其设置为轮询 scm 在本例中为 bitbucket git 以检查更改 当然 要访问存储库以轮询更改 它还需要这些 ssh 凭据 我似
  • 如何在 python 解释器 shell 中重复最后一个命令?

    如何重复上一条命令 常用键 向上 Ctrl 向上 Alt p 不起作用 他们创造出无意义的人物 ve kakarukeys localhost ve python Python 2 6 6 r266 84292 Nov 15 2010 21
  • Subversion:暂存文件以显式提交?

    我已经非常习惯 git 的方式 即必须接触要提交的每个文件 并且在执行此操作时仔细检查差异 现在在工作中我必须使用 svn 并且我总是不小心提交一些东西 有没有办法让 subversion 的行为像 git 一样 因为我必须明确告诉每个文件
  • 无法推送到远程 GIT 存储库 - “[...] 似乎不是 git 存储库”

    我已经在我的服务器上使用适当文件夹中的以下内容设置了 GIT 存储库 我的子域的根目录 git mydomain com mkdir foo git cd foo git git init bare shared 这将使存储库可通过 URL
  • 如何使用 hg Convert 将 git 分支导入到 Mercurial 中?

    我的 git 存储库中有许多分支 david Panama app git branch r origin HEAD gt origin master origin master origin newButtons origin newFo
  • 使用 sed 和 pstree 显示正在使用的终端类型

    我一直在尝试仅显示用作名称的终端类型 例如 如果我使用 konsole 它会显示 konsole 到目前为止我一直在使用这个命令 pstree A s 输出这个 systemd konsole bash pstree 我有以下内容可以从该行
  • Shell Linux:grep 带有 NULL 字符的精确句子

    我有一个像这样的文件 key 0value n akey 0value n key2 0value n 我必须创建一个以单词作为参数的脚本 我必须返回具有与参数完全相同的键的每一行 I tried grep aF key x0 但 grep
  • 为什么在将应用程序部署到 Heroku 时会出现此错误?

    使用 git hub 将应用程序部署到 heroku 时遇到某种错误 问题是 我不理解 heroku 日志和随之而来的错误 这是 Heroku 日志 Marcuss MacBook Pro Weather App marcushurney
  • GitHub:本地使用 wiki:首次推送到 GitHub wiki 时出错

    这个问题我搜索了很多次 还是无法解决 假设我从 user1 分叉了一个存储库 我们将其命名为 repo1 现在我也想分叉该存储库的 Wiki 部分 当您分叉存储库时 GitHub 不会为您做任何事情 https stackoverflow
  • 使用 ls 和 grep 列出具有特定扩展名的文件

    我只想从当前目录获取文件 并且只输出 mp4 mp3 exe 文件 没有其他内容 所以我想我可以这样做 ls grep mp4 grep mp3 grep exe 但不会 因为第一个 grep 将仅输出 mp4 因此其他 2 个 grep
  • Git checkout 分支从其他分支留下目录树

    我有一个branch2 其源是branch1 并重命名了源自branch1 的目录 当签出branch1时 重命名的目录仍然存在 但没有标记为未暂存的修改 重命名的目录当然不会作为branch1 上的提交出现 为什么会出现这种情况 上述目录
  • 没有工作树就无法使用 Git-Windows-git-pull

    我在 Windows 上遇到与 Git 相关的问题 无法从 git 上的存储库中提取更改 我能够添加 提交和推送我的更改 但不能拉取 它给了我一个错误 致命 C Git libexec git core git pull 不能在没有 工作树
  • 两个人同时在 git 中处理一个文件[重复]

    这个问题在这里已经有答案了 可能的重复 当两个对等点同时将更改推送到同一个远程时 git 如何工作 https stackoverflow com questions 4643998 how git works when two peers
  • 为什么 ssh-agent 需要 root 访问权限?

    我刚刚安装了 Archbang 并尝试克隆我的 Git 项目 这需要 SSH 密钥 过去 我在 Ubuntu 和 RedHat 机器上遵循 Github 指南取得了成功 但由于某种原因 它在我的新 Arch 安装上不起作用 我已使用以下命令
  • shell进程的并行执行

    有没有一个工具可以在 Windows 批处理文件中并行执行多个进程 我发现了一些有趣的 Linux 工具 parallel http mi eng cam ac uk er258 code parallel html and PPSS ht
  • CodeCommit 错误 Elastic Beanstalk (AWS)

    运行后 pip install upgrade awsebcli 尝试执行以下操作时出现以下错误 eb deploy 无法将代码推送到 CodeCommit 存储库 错误 CommandError 处理 git 命令时发生错误 错误代码 1
  • 如何通过管道将输入和输出传送到交互式 shell?

    我正在尝试构建一个应用程序 使用户能够与命令行交互式 shell 例如 IRB 或 Python 进行交互 这意味着我需要将用户输入通过管道传输到 shell 并将 shell 的输出返回给用户 我希望这会像管道 STDIN STDOUT
  • 在大型文本文件中查找重复记录

    我在一台 Linux 机器 Redhat 上 并且有一个 11GB 的文本文件 文本文件中的每一行包含单个记录的数据 并且该行的前 n 个字符包含该记录的唯一标识符 该文件包含略多于 2700 万条记录 我需要验证文件中不存在具有相同唯一标

随机推荐