我已经为 Windows 和 Linux 编写了脚本,基本上用我们服务器上的所有 git 存储库设置了一个新的用户工作区。
我希望用户为我们的服务器输入一次密码,将其存储在本地变量中,将该变量传递给每个git pull
命令,然后删除密码变量并退出。
git pull
命令请求时如何输入密码?适用于 Windows 批处理文件和 Linux shell 脚本。
这是来自 Linux 脚本的代码:
#!/bin/bash
echo "Enter password: "
read pswd
clear #No screen peaking
#This is repeated for each repo
location=folderName
mkdir $location
cd $location
git init
git remote add origin git@<server>:$location.git
git pull origin master
#Above prompts for password & is where I want to automatically input $pswd
我已经尝试过在 SO 和其他地方推荐的各种东西,例如管道、从 .txt 文件读取等。我宁愿不需要任何东西,只需要普通的旧 Windows cmd 和 Linux 终端命令。由于此脚本仅用于设置目的,因此我不需要使用 ssh 代理之类的东西永久安全地存储密码。
我运行的是 Windows 7 和 Ubuntu 12.10,但是这个脚本是为设置新用户而设计的,所以它应该可以在大多数发行版上运行。