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)
| 743 | /// - Network operations fail |
| 744 | /// - Changes fail to download or save |
| 745 | fn run(&self) -> CliResult<()> { |
| 746 | // Create a runtime for async operations |
| 747 | let rt = tokio::runtime::Runtime::new().map_err(|e| { |
| 748 | CliError::Internal(anyhow::anyhow!("Failed to create async runtime: {}", e)) |
| 749 | })?; |
| 750 | |
| 751 | rt.block_on(self.run_async()) |
| 752 | } |
| 753 | } |
| 754 | |
| 755 | // Tests |