我有一个在git.debian.org(alioth)上托管的项目,我想在http://gitorious.org上配置一个post-receive钩子来更新存储库的镜像.
我想我必须要用 git push --mirror gitorious
现在,我需要让Alioth获得授权才能获得成功.我怎么做?
我想我需要在gitorious上配置用户并为其创建一个ssh密钥.然后当我在post-receive钩子中执行git push时,请确保使用此ssh键.
我可以使用~/.ssh/config但问题是许多用户可以推送aloth,每个人都必须登录并配置~/.ssh/config.相反,我想要一个命令行选项或环境变量来告诉ssh使用哪个键.我能这样做吗?
另外,您是否有其他想法可以实现镜像?并且,是否有可能以相反的方式配置它(有效推动阿里斯)?
所以,我有一个主持人,称之为rob.我使用ssh-keygen rob来获取一个公钥,我在为存储库添加一个新的部署密钥屏幕时给了github cheech.现在我想部署chong上rob为好.但是,如果我去添加新的部署关键屏幕仓库chong在github上,并粘贴在公共密钥我生成的rob,它说key already in use.我想,如果他们的密钥被使用,我可以克隆chong,rob但是说允许被拒绝.
很明显,这比我想象的要复杂得多,它涉及多个键或其他东西.我应该怎么做克隆chong上rob?
谢谢您的帮助.
是否可以临时更改"git push remote master"的ssh用户而不会搞乱.git/config或"git remote",或者使用整个远程url?
[root@host gitrepo]# git push otheruser@remote master # this does not work, but how great it would be
[root@host gitrepo]# USER=otheruser git push remote master # still asks password for root
Run Code Online (Sandbox Code Playgroud) 在使用Chef部署应用程序时,我已经使用以下资源从私有github存储库中克隆了代码库:
git '/mnt/application' do
repository 'git@github.com:organization/repository'
reference 'master'
action :sync
user node.application.user
group node.application.user
end
Run Code Online (Sandbox Code Playgroud)
但是,在扫描git资源的文档后,我无法看到您如何提供密钥文件进行身份验证.我也很困惑如何将这个密钥存储在数据包中,因为该文件包含一堆新行.有任何想法吗?
问题是我在远程服务器上没有 root 权限,并且由于同样的问题而无法使用默认的 ssh 密钥位置,即使它们是针对我当前使用的用户,目标是 OFF LIMITS。
我发现我现在可以在自定义文件夹中创建一个 ssh,我似乎找不到将其传递给 git 的方法。为了清楚起见,我无法编辑配置文件,也无法使用任何 root 命令。
可能有类似的东西,git -i ssh/path但我似乎找不到关于这个问题的任何文档,据我所知,这甚至可能是不可能的。
如果有人找到了解决方案,我们将不胜感激!
编辑:解决方案