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)
| 766 | /// - Network operations fail |
| 767 | /// - Changes fail to download or save |
| 768 | fn run(&self) -> CliResult<()> { |
| 769 | // Create a runtime for async operations |
| 770 | let rt = tokio::runtime::Runtime::new().map_err(|e| { |
| 771 | CliError::Internal(anyhow::anyhow!("Failed to create async runtime: {}", e)) |
| 772 | })?; |
| 773 | |
| 774 | rt.block_on(self.run_async()) |
| 775 | } |
| 776 | } |
| 777 | |
| 778 | // Tests |