vscode 请允许我继续在现有的位置进行?

xpszyzbs  于 3个月前  发布在  Vscode
关注(0)|答案(7)|浏览(48)

当我想要在Codespace中继续时,目前我总是需要创建一个新的Codespace,但我们不能允许我在之前创建的位置继续吗?

46scxncf

46scxncf1#

我认为我们还没有这个功能的原因有以下几点:

  1. 从功能Angular 来看,我的理解是代码空间应该被“一次性”创建,即你可以根据需要启动它们并在必要时删除它们。因此,建议始终创建一个新的代码空间。

  2. 从技术Angular 来看,要使代码空间中的私有git状态保持同步需要额外的工作。例如,如果我想在一个已存在的代码空间中继续工作,但该代码空间检出了不同的分支,或者相同的分支上有未发布的本地提交,我们现在就有可能面临转移的编辑状态不再有效的风险。

wljmcqd8

wljmcqd82#

我认为这最终是提供者关于在哪里继续的决定。因此,如果Codespaces最终能够支持这一点,那么也许这个需要从选择器中由扩展来信号。

我尚未完全理解的是:一旦我选择了要“继续在”的目标,我的理解是目标处于一个活动的编辑会话中,即从现在开始双向(内向和外向)同步更改。因此,现在当我回到本地工作区并再次通过“继续在...”流程时,是否应该给我提供已经启用了此编辑会话的目标?

bxjv4tth

bxjv4tth3#

如果Codespaces最终能够支持这个功能,那么也许这个需要是扩展可以从选择器中发出的信号。

我认为这将是Codespaces扩展为继续使用现有代码空间提供另一个选项,除了创建新代码空间的选项。

从现在开始,双方都将同步更改。

目前,编辑会话是一种单向传输,发生在您选择继续使用现有代码空间的选项时。双向同步很有吸引力,但如果您有多个客户端并发更改,就会变得很快复杂。理想情况下,我认为我们希望能够在不要求手动用户干预的情况下解决它们,这最终需要某种基于OT/CRDT的合并,并成为更长远的路线图项目。

为了暂时缓解这个限制,有一个实验性的autoStore设置,它将在关闭时上传您的编辑会话,这意味着当您下次打开与编辑会话相关的工作区时,该编辑会话应该自动恢复。然而,我将其保留为实验性,因为关于如果只是窗口重新加载而不存储编辑会话的问题还有待解决,以及在web上长时间运行的问题。如果编辑会话标识符发生变化(例如分支快进),当前的编辑会话也会变成“孤儿”,并且我有工作要做来显示这样的编辑会话,以便用户不会失去它们。

wnvonmuf

wnvonmuf5#

哦,我明白了,我没有意识到这个限制。我同意,如果我在点击“继续...”命令时只同步编辑会话的更改,那么继续的目标总是新鲜是有道理的。
但是,如果我选择一个实际上已经存在的目标呢?我能理解Codespace始终是新的,但insiders.vscode.dev也是如此吗?或者甚至通过桌面上的远程仓库扩展程序?

unguejic

unguejic6#

顺便说一下,如果这是真的:

目前,编辑会话是一种单向传输,当你选择“继续”选项时发生。

然后我真的不明白为什么我们在帐户菜单中显示“编辑会话”。这与我在$x_{1e0f1}^{x}$中的困惑有关。

yqhsw0fo

yqhsw0fo7#

关于内部人员,vscode.dev是否总是如此相似?或者通过远程仓库扩展在桌面上使用?
是的,在这些情况下,你会得到一个模态对话框询问是否要覆盖你的更改,因此继续在一个代码空间或一个新的克隆中进行操作是更好的选择。
目前,编辑会话是一种单向传输,当你选择“继续”选项时就会发生。
应该修改为:
目前,编辑会话是一种单向传输,当你选择“继续”选项时就会发生,前提是你在当前或之前的“继续”流程中打开了编辑会话。

相关问题