Execute the pull command. This method creates a tokio runtime and executes the async pull operation. It handles all the steps required to download and apply remote changes. # Errors Returns an error if: - No repository is found - The remote cannot be connected to - Network operations fail - Changes fail to download or save
(&self)
| 989 | /// - Network operations fail |
| 990 | /// - Changes fail to download or save |
| 991 | fn run(&self) -> CliResult<()> { |
| 992 | // Create a runtime for async operations |
| 993 | let rt = tokio::runtime::Runtime::new().map_err(|e| { |
| 994 | CliError::Internal(anyhow::anyhow!("Failed to create async runtime: {}", e)) |
| 995 | })?; |
| 996 | |
| 997 | rt.block_on(self.run_async()) |
| 998 | } |
| 999 | } |
| 1000 | |
| 1001 | // Tests |