Git 身份验证 - 以新用户身份拉取

2024-05-28

以下命令集可以正常工作

$ mkdir carboncake
$ cd carboncake
$ git init
$ git remote add origin [email protected] /cdn-cgi/l/email-protection:repositories/carboncake.git 
$ git pull

但是当我尝试以不同的用户身份拉取时,

$ mkdir carboncake
$ cd carboncake
$ git init
$ git remote add origin [email protected] /cdn-cgi/l/email-protection:repositories/carboncake.git 
$ git pull

我收到以下错误

fatal: 'repositories/carboncake.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

my gitosis.conf包含

[gitosis]

[group team]
writable = sweepshots
members = git_id_rsa

[group gitosis-admin]
writable = gitosis-admin
members = git_id_rsa


[repo carboncake]
description = A brand new app by Mithun.
owner = Mithun P

[group carboncake]
writable = carboncake
members = mithun @core

and the keydir包含git_id_rsa.pub KEY-----.pub mithun.pub mithun-rsa-key-20110427.pub

和用户的.ssh目录包含

mithun@testserver:~$ ls .ssh/
id_rsa  id_rsa.pub  mithun_rsa  mithun_rsa.pub

- 更新

I tried $ git remote add origin [email protected] /cdn-cgi/l/email-protection:carboncake.git也是,但是同样的错误。

实际上carboncake.git位于/srv/gitosis/repositories/carboncake.git


为了给@VonC(完全正确)的答案添加一点简单的英语清晰度......

gitosis (不再处于积极开发中,您应该使用 gitolite,但这个答案适用于它们)将每个用户的公钥存储在(在您的情况下)~gitosis/.ssh/authorized_keys。当用户通过 ssh 连接到帐户时gitosis,ssh 进行加密握手,在authorized_keys 文件中找到与提供的密钥匹配的行,并执行该行所说的任何操作。如果您查看该authorized_keys 文件,就会发现每一行都提供了一个在该用户登录时调用的命令,该命令是对 gitosis 进程的调用,其中包含相关用户的名称。

所以每个用户实际上都通过 ssh 访问相同的用户gitosis“机器”帐户,但他们使用 SSH 的密钥会以他们的用户身份启动 gitosis。这就是 gitosis 知道它正在与哪个用户交谈的方式,即使他们已经登录到名为 的同一个“机器”帐户gitosis.

因此,您想要跟踪到 gitosis 的每个本地存储库都需要提供格式的远程版本[email protected] /cdn-cgi/l/email-protection:<reponame>.git.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Git 身份验证 - 以新用户身份拉取 的相关文章

  • 创建一个包含另一个 git 存储库的 git 存储库

    我创建了一个裸 git 存储库 我们称之为存储库 1 并克隆了它 在克隆 repo 2 中 我创建了几个文件夹 其中我决定创建一个 git repo repo 3 当我提交到 repo 2 时 一切都按预期运行 除了 repo 3 被忽略
  • libgit2如何获取当前目录的状态?

    如何获取单个目录而不是整个存储库的状态 我查看了以下内容 git status list new它获取存储库状态 但我只关心位于单个目录中的文件 git status file获得单身状态 有没有办法可以使用 libgit2 获取单个目录的
  • 如果提交格式不正确,是否可以拒绝 Github 上的提交?

    正如中提到的this https stackoverflow com a 6742691 1501285答案 可以在 Github 提交中引用问题 是否可以拒绝它的提交not格式化成这样 Example fix gh 12 foo bar是
  • 如何配置“git diff”以使用 emacs diff [重复]

    这个问题在这里已经有答案了 是否可以配置 git diff 以使用 emacs diff 如果是的话 你能告诉我怎么做吗 谢谢 看这个问题 如何使用视觉差异程序查看 git diff 输出 https stackoverflow com q
  • 可以使用 git 项目并在 VS2013 中查看 TFS 工作项吗?

    所以我升级到了VS2013 希望能顺利进行所有开发 不过有一件事确实让我很恼火 我的团队使用 TFS 而我更喜欢 git 因此我使用 git tfs 来桥接两者以进行源代码控制 我们使用 TFS 工作项来跟踪错误和故事等 如果重要的话 我也
  • 如何比较本地 Git 分支与其远程分支

    我怎样才能看到diff本地分支和远程分支之间 git diff
  • 从私有 GitHub 存储库迁移到公共和私有

    我使用 GitHub 上的私人存储库开发了一个客户项目 我们现在要做的就是开放其中的某一部分 并产生该项目的开源版本 我们的想法是 客户的版本将在此基础上构建 对开源版本所做的任何更改也应适用于私有版本 现在的问题是我不能将当前的 GitH
  • 如何将 HEAD 移回之前的位置? (分离头)和撤消提交

    在 Git 中 我试图做一个squash commit通过合并到另一个分支然后重置HEAD通过以下方式前往上一个地点 git reset origin master 但我需要走出这一步 如何将 HEAD 移回之前的位置 我有 SHA 1 片
  • git pull:无法快进,

    你能帮我解决我的问题吗 当我尝试从 dev 分支拉取时发生错误 我浏览了解决方案 它说我需要 rebase 但它对我来说没有成功 CT aohc MP1GYWQA MINGW64 c TCO source RAPMD Web Fronten
  • 仅当除 master 之外的所有分支都有推送的 TAG 时,Gitlab 才会触发 Pipeline

    我的 YAML 文件必须如何配置 以便仅在推送标签时触发一种情况 作业 构建 的管道 该标签可能位于除 master 之外的所有分支中 对于主案例 我有一个单独的工作 build master yaml 文件 问题 如果主分支获得标签 管道
  • 在“git rm -rf”之后恢复暂存但未提交的文件

    在我的本地计算机上 我从文件夹中删除了文件 git init git add all 然后我写了 不要问我为什么 git rm rf 我还没有承诺 现在我的项目中有空文件夹 在 git文件夹有objects包含 53 Mb 的文件 我怎样才
  • 如何给 Git 控制台着色?

    我最近看到gitWindows 中的控制台是彩色的 例如绿色表示添加 红色表示删除等 我如何为我的颜色上色git这样的控制台 为了安装它 我使用了以下命令 sudo apt get install git core As noted htt
  • 如何恢复已删除的文件[重复]

    这个问题在这里已经有答案了 可能的重复 在 Git 存储库中恢复已删除的文件 https stackoverflow com questions 953481 restore a deleted file in a git repo 如何恢
  • 是否可以在不从 git 克隆或拉取的情况下获取分支名称?

    我想获取 git 存储库的所有分支名称 目前 我克隆存储库 然后将它们获取到本地计算机上 这是低效的 因为我所需要的只是名称而不是其他 我想知道是否可以这样做 如果是这样 我可以使用什么命令 在本地 无需克隆 您可以键入 使用 gitls
  • Git 更新文件时更改默认 umask

    我的 Git 有问题 我在 Google 和 StackOverflow 中搜索了解决方案 但没有任何帮助 问题是 每次 git 更新工作目录中的某些文件时 当我签出分支或合并分支等时 文件权限都会更改 以便添加 可写到组 标志 如果该文件
  • 空提交的 Git 补丁

    我创建一个空提交 git commit allow empty m something important 有时它很有用 例如协调 2 个 或更多 不同的 git 树 然而 当我 git format patch 空提交被省略 因为它们不与
  • git:推送单个提交

    假设我进行了多次提交 并希望挑选哪些提交到远程存储库 我该怎么做 在ascii中 C1 gt C2 gt C3 gt C4 我想推C2和C4 通过变基 重置 推送然后重置进行重新排序是否有效 C1 gt C2 gt C3 gt C4 gt
  • 在 $git push -u origin main 命令之后,Git bash 不请求任何身份验证,实际上什么也不做

    当我尝试将代码上传到 github 时 以下是我在 Git Bash 终端中执行的步骤 当我尝试使用将代码推送到 github 时 git push u origin main光标移动到下一行并持续闪烁 但不执行任何操作 git remot
  • 使用可通过 FTP 访问的 Web 服务器进行 Git 托管?

    我运行一个 糟糕的 网站 托管在第三方网络服务器上 我可以通过 FTP 访问我的 Web 服务器 据推测 Git 本身具有通过 FTP 推送 拉取的能力 由于我的 Web 服务器已经可以随处访问 我希望将其用作集中式 Git 存储库 我可以
  • git merge 和 git merge origin 之间的区别

    这不是一个关于git merge origin branch vs git merge origin branch git merge

随机推荐

  • 在 R 中读取 Stata 13 文件

    有没有办法在 R 中读取 Stata 版本 13 数据集文件 我尝试执行以下操作 gt library foreign gt data read dta TEAdataSTATA dta 但是 我收到一个错误 read dta TEAdat
  • 如何在 numpy 中有效地实现 x[i][j] = y[i+j] ?

    Let x是形状为 A B 的矩阵并且y是一个大小为 A B 1 的数组 for i in range A for j in range B x i j y i j 如何使用 numpy 中的函数有效地实现等效代码 方法 1 Using S
  • 每 30 秒运行一次 Laravel 方法

    我有一个在我调用应用程序上的特定 URL 时运行的方法 它处理数据库队列中的行 该间隔被设置为 Cron 可能的最小间隔 即 1分钟 这需要减少到 30 秒 所以我想知道如何最好地实现这一目标 我想我可以在我的脚本中构建一个循环 运行代码两
  • 防止重复数据输入mysql数据库

    我试图让我的电子邮件订阅服务拒绝数据库中已存在的电子邮件 这样用户就不会订阅同一封电子邮件两次 这就是我所拥有的 但它不起作用 有什么想法吗
  • jsp/servlet 从数组填充下拉框

    大家好 我正在尝试创建一个表单 允许您为某个主题创建一个实验室 它有一个下拉框 您可以在其中选择与该用户相关的主题 但是 当我去加载页面时 我收到此错误g apache jasper JasperException java lang Nu
  • 使用 fgets 从文件读取 Seg Failure 错误

    declare double pointer so that create array can return an array int aryReturn int size char trashdata 100 open file FILE
  • 合并多个 git 存储库

    假设我有一个看起来像这样的设置 phd code phd figures phd thesis 由于历史原因 这些都有自己的 git 存储库 但我想将它们合并为一个 以稍微简化事情 例如 现在我可能会进行两组更改 并且必须执行类似的操作 c
  • 不要将变量内容视为 sed 中的特殊字符

    我有以下内容sed命令 sed i 4i CHANGES CHANGELOG rst 然而 我的 CHANGES变量看起来像这样 title list elem elem 因此 上述命令失败并出现以下错误 sed e expression
  • barryvdh/laravel-dompdf:- fopen 无法打开流:laravel 5.7 中没有这样的文件或目录

    当我想下载发票 pdf 时出现错误 fopen project path storage fonts 071ddd89a9cb147bf5639344caee3fe8 ufm 无法打开流 没有这样的文件或目录 在此输入图像描述 https
  • 通过 PHP CURL 添加 Google 联系人

    我已经成功地通过 Zend Framework 和 PHP 将联系人添加到 google 我也希望能够通过 CURL 来做到这一点 有人有关于如何执行此操作的良好教程吗 我终于能够通过 CURL 和访问令牌来做到这一点 首先 我要说的是OA
  • Pymongo 中的全文搜索

    即将推出的 MongoDB 2 4 支持全文检索 http docs mongodb org manual release notes 2 4 text indexes 我们在 mongo shell 中使用命令来执行此操作 例如 db p
  • Virtualenv 激活脚本不会在带有 set -euo 的 bash 脚本中运行

    我正在尝试创建一个激活 virtualenv 的 bash 脚本 pip 安装 requests txt 并继续 这将是我的 init sh 脚本 供以后使用 usr bin env bash set euo pipefail DIR sc
  • 如何匹配与 Perl 中的特定模式不匹配的字符串?

    我知道使用正则表达式很容易匹配除给定字符之外的任何内容 text ab ac ad text s c g Match anything except c text is now c 我不知道如何 排除 字符串而不是字符 我如何 匹配除 ac
  • 致命错误:数组长度无效分配失败 - JavaScript 堆内存不足

    Error lt Last few GCs gt 873 0x1020aa000 47109 ms Scavenge 2107 9 2131 9 gt 2092 1 2131 9 MB 0 3 0 0 ms average mu 0 995
  • HTML 电子邮件 - Outlook 2013 中图像之间的间隙

    I m composing an HTML email which looks fine in every major email client except Outlook 2013 which is adding vertical ga
  • 如何自动更新数据库中的记录?

    我有一个工作表 在其中插入新工作 该表还包含职位发布日期 默认情况下 当发生新插入时 作业状态为打开状态 现在 当作业超过 30 天时 我想将作业状态从开放更改为关闭 我该怎么做 尝试创建一个每天运行的事件 如下所示 CREATE EVEN
  • UML 只能用于面向对象吗?

    目前 在我的论文期间 存在着关于 UML 是否仅用于 OO 开发 的激烈争论 我从一些来源进行了搜索 其中给出了很多关于它的论点 就我自己而言 我相信并非所有 UML 图都是专门为 OO 系统 软件开发而制作的 即 状态图 因此 我希望得到
  • 无法识别智能卡上的 AFL

    我正在努力使用我陷入困境的 AID 列表从 VISA 例如 PAN 到期日 信用卡获取有用数据 我已经能够手动访问所有数据 使用下一个教程 http www openscdp org scripts tutorial emv reademv
  • 如何让node.js中的线程休眠而不影响其他线程?

    As per 了解 Node js 事件循环 http blog mixu net 2011 02 01 understanding the node js event loop node js支持单线程模型 这意味着如果我向 Node j
  • Git 身份验证 - 以新用户身份拉取

    以下命令集可以正常工作 mkdir carboncake cd carboncake git init git remote add origin email protected cdn cgi l email protection rep