【问题标题】:Automate commands in git cmd?在 git cmd 中自动执行命令?
【发布时间】:2015-09-02 13:21:42
【问题描述】:

有没有办法在 git-cmd 中自动输入而无需实际输入输入命令?假设将输入写入脚本以自动运行?

  1. 启动 git.cmd
  2. 连接到 git 服务器。
  3. 克隆 git 存储库。
  4. 输入密码。

【问题讨论】:

  • 是的。它们被称为批处理文件。这里有成千上万个使用它们的例子。搜索batch file
  • 它适用于 git-cmd 吗?
  • 我可能错了,但是如果你使用的是Windows,也许你可以将git添加到环境变量中,并创建一个Windows服务或使用Windows任务计划程序对windows cmd执行一些操作。
  • 你一直提到的git-cmd是什么?
  • 不确定你所说的 git-cmd 是什么意思。有一个与 MSysGit (git.cmd) 一起安装的命令文件,它启动 Git。还有通常与 Git 一起安装的 bash 终端。你说的是哪个 git-cmd?

标签: c# git command command-line-interface


【解决方案1】:

我遇到了同样的情况,我使用 expect 将其自动化

#!/usr/bin/expect
set timeout 600
log_user 0

spawn git clone http://myuser@myserver/group/repo.git tmp/repo

expect "Password for 'http://myuser@myserver':"
send "mypassword\r"
expect eof

密钥正在适当地设置timeout

我看到expect for Windows 可用。

【讨论】:

  • 你可以在windows cmd中做到这一点吗?
  • 更新了我的答案指向Windows-specific implementation of expect
  • 我在我的 .bat 文件中尝试了上述脚本,我收到错误消息说前三行不是内部或外部命令。 @狼
【解决方案2】:

假设“git-cmd”是 Git 的 Windows 命令外壳设置,那么您需要做的就是编写命令脚本(或批处理文件)。您可以找到一般说明here。值得注意的是 Git bin 文件夹需要在您的路径中。用于克隆存储库的 Git 命令描述为 here。正如另一个答案中提到的,您可以编写一个程序来生成一个命令 shell 并运行命令脚本,但这似乎还有很长的路要走。

希望对您有所帮助。

【讨论】:

  • 是的,但是当我提示输入密码以进入 git 服务器时,我将如何添加脚本以自动添加输入?
  • 现在我们知道问题的实质是什么,我认为 Wolf 有一个很好的答案。
猜你喜欢
  • 2013-06-23
  • 2022-11-27
  • 2021-02-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多