我正在使用Grunt为项目创建构建脚本,我想提交 - > gt; tag->推送到远程服务器,但我不知道如何在Bitbucket请求时输入凭据git push。 https://www.npmjs.org/package/grunt-git上grunt-git的文档似乎没有解决这个问题。凭证(只是一个密码)将从存储在其他地方的配置文件中读取,然后在理想情况下,在被要求时给出。
我想也许我可以使用grunt-shell来解决这个问题,但即便如此,我也不确定。经过进一步思考,似乎我应该只使用grunt来执行git commit和git tag命令,然后将其留给CI服务器软件(在本例中为Jenkins)来处理凭据并推送到远程。
所以我的问题实际上是双重的: 1)在这种情况下,是否可以在要求时提供凭证?如果是这样,怎么样? 2)将此责任简单地留给CI服务器(Jenkins)是否是更好的解决方案(更好的实践/更容易)?
感谢。
答案 0 :(得分:0)
1)是否可以在请求时提供凭据 这个案例?如果是这样,怎么样?
如果add your SSH key指向Bitbucket,并且在生成SSH密钥时没有输入密码,那么当您尝试推送时,系统不会提示您输入任何凭据。
2)简单地说它是一个更好的解决方案(更好的实践/更容易) 将此责任留给CI服务器(Jenkins)?
Jenkins使用自己的SSH密钥,如果它是无密码的,它可以运行一个构建,推送到没有凭据导入Jenkins密钥的任何主机。
通常CI服务器的工作是处理这个,而不是构建工具。但是,如果您目前只需要绕过本地计算机上的密码,生成无密码的SSH密钥,或尝试SSH Agent之类的内容。