gpt4 book ai didi

windows - 是否有 git 的设置允许克隆在一个操作系统上使用 http 而在另一个操作系统上使用 ssh?

转载 作者:可可西里 更新时间:2023-11-01 10:39:31 24 4
gpt4 key购买 nike

小问题
是否有 git 的设置允许克隆在一个操作系统上使用 http 而在另一个操作系统上使用 ssh?对于确切的用法:可以在通常使用 SSH 连接的 Mac OS X 终端上使用 http 协议(protocol)(在 Windows 中克隆)

背景
我有一台 Macbook Pro,我可以使用 Mac OS X 和 Windows 7 双启动。我有一个共享的 express-34 卡,我在上面存储了我所有的存储库/工作目录。我使用它,所以我可以从 Mac 端或 Windows 端无缝地工作(直到现在)。此时,我无法提交/更新我从 Windows 克隆/ checkout 的存储库中的任何更改。值得注意的是,我从 Mac 克隆的 git repos 在 Windows 中运行良好,而不是相反。

系统信息
Windows 7:
Tortoise git 和 Tortoise SVN

操作系统:
自制软件安装了 git 和 SVN

更新
我现在在 Mac OS X Lion 和 Windows 7 上共享单个 SSH checkout (在项目级别)。当我 native 启动到 Win 7 以及在 Lion 内部虚拟化时,这都有效。

最佳答案

如果我理解您的问题,我认为使用相同的 remote 是不可能的姓名。特定的 Remote 始终由指定协议(protocol)的 URL 定义。但是,您可以使用不同的 URL 添加一个新的 Remote ,这会产生不同的协议(protocol)。

这样做的一个问题是您将在同一个存储库中拥有具有两个不同名称的同一个 Remote 。这意味着所有远程分支(origin/master 等)都将被复制并且不同步,这将导致任何依赖于分支名称而不是 SHA 哈希的 git 行为出现问题。

例如,假设您有一个远程名为“windows”的指定 http 和一个名为“mac”的远程指定 ssh。假设你的存储库落后于你在 OSX 中使用 git fetch/merge 更新的 Remote ,现在 mac/master 是最新的但 windows/master 不是。这对您来说可能不是什么大事,但它确实意味着 tracking branches和其他依赖于分支名称的行为可能不会像您预期的那样工作。

关于windows - 是否有 git 的设置允许克隆在一个操作系统上使用 http 而在另一个操作系统上使用 ssh?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6944196/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com