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)
| 874 | /// - Network operations fail |
| 875 | /// - Changes fail to download or save |
| 876 | fn run(&self) -> CliResult<()> { |
| 877 | // Create a runtime for async operations |
| 878 | let rt = tokio::runtime::Runtime::new().map_err(|e| { |
| 879 | CliError::Internal(anyhow::anyhow!("Failed to create async runtime: {}", e)) |
| 880 | })?; |
| 881 | |
| 882 | rt.block_on(self.run_async()) |
| 883 | } |
| 884 | } |
| 885 | |
| 886 | // Tests |