Git为每次推送输入长密码

时间:2011-05-24 05:37:29

标签: linux git ssh

每当我尝试向GitHub推送任何内容时,它会向我询问地址git@github.com:...,之后它会想要密码短语。有没有办法实现自动化?

我正在使用Linux Ubuntu。

3 个答案:

答案 0 :(得分:84)

您可以使用ssh-agent来记住您的密码(Gnome会自动为您运行,通常......)。

$ ssh-agent bash
$ ssh-add 
Enter passphrase for /home/elyobo/.ssh/id_rsa: 
Identity added: /home/elyobo/.ssh/id_rsa (/home/elyobo/.ssh/id_rsa)

从现在开始,在您运行此终端的终端内,您的密码将会被记住。

理想情况下,你会让它自动运行,因此在gnome中运行的所有shell都可以工作;看看Gnome Keyring

答案 1 :(得分:1)

这是因为您使用HTTPS(类似https://github.com/felipelalli/private.git)而不是SSH(类似于git@github.com:felipelalli / private.git)。

如果需要克隆SSH,然后按照以下步骤授权您的计算机:https://help.github.com/articles/generating-ssh-keys

答案 2 :(得分:0)

使用public function getAuthenticatedUser() { try { if (! $user = JWTAuth::parseToken()->authenticate()) { return response()->json(['user_not_found'], 404); } } catch (Tymon\JWTAuth\Exceptions\TokenExpiredException $e) { return response()->json(['token_expired'], $e->getStatusCode()); } catch (Tymon\JWTAuth\Exceptions\TokenInvalidException $e) { return response()->json(['token_invalid'], $e->getStatusCode()); } catch (Tymon\JWTAuth\Exceptions\JWTException $e) { return response()->json(['token_absent'], $e->getStatusCode()); } return response()->json(compact('user')); } <%= f.input :brand, required: true, label: "test" %> 命令将您的私有标识添加到身份验证代理的另一种方法。

ssh-agent