{"record":{"id":"ce496e21823f626d","repo":"zed-industries/zed","slug":"git-clone-isn-t-supported-for-project-guests","errorCode":null,"errorMessage":"Git Clone isn't supported for project guests","messagePattern":"Git Clone isn't supported for project guests","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/project/src/git_store.rs","lineNumber":3153,"sourceCode":"        &self,\n        repo: String,\n        path: impl Into<Arc<std::path::Path>>,\n        cx: &App,\n    ) -> Task<Result<()>> {\n        let path = path.into();\n        match &self.state {\n            GitStoreState::Local { fs, .. } => {\n                let fs = fs.clone();\n                cx.background_executor()\n                    .spawn(async move { fs.git_clone(&path, &repo).await })\n            }\n            GitStoreState::Remote {\n                upstream_client,\n                upstream_project_id,\n                ..\n            } => {\n                if upstream_client.is_via_collab() {\n                    return Task::ready(Err(anyhow!(\n                        \"Git Clone isn't supported for project guests\"\n                    )));\n                }\n                let request = upstream_client.request(proto::GitClone {\n                    project_id: *upstream_project_id,\n                    abs_path: path.to_string_lossy().into_owned(),\n                    remote_repo: repo,\n                });\n\n                cx.background_spawn(async move {\n                    let result = request.await?;\n\n                    match result.success {\n                        true => Ok(()),\n                        false => Err(anyhow!(\"Git Clone failed\")),\n                    }\n                })\n            }","sourceCodeStart":3135,"sourceCodeEnd":3171,"githubUrl":"https://github.com/zed-industries/zed/blob/f4178619acd0d47ea1f76a2025c42962c6d6638c/crates/project/src/git_store.rs#L3135-L3171","documentation":"In GitStore::git_clone: the store is in the Remote state with an upstream collab client, i.e. the caller is a project guest. Cloning repositories is only supported on the host/local side, so the request is rejected for guests.","triggerScenarios":"Thrown at crates/project/src/git_store.rs:3153 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Ask the project host to perform the clone","Clone the repository locally in your own Zed window instead"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"f4178619acd0d47ea1f76a2025c42962c6d6638c","analyzedAt":"2026-08-20T19:29:52.058Z","contentChangedAt":"2026-08-20T19:29:52.058Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}