use crate::repository::{branch_remote_ref_name, branch_remote_tracking_ref_name};use crate::{remote, Reference};use gix_ref::FullNameRef;use std::borrow::Cow;/// Remotesimpl<'repo> Reference<'repo> { /// Find the name of our remote for `direction` as configured in `branch.<name>.remote|pushRemote` respectively. /// Return `None` if no remote is configured. /// /// See also [`Repository::branch_remote_name()`](crate::Repository::branch_remote_name()) for more details. pub fn remote_name(&self, direction: remote::Direction) -> Option<remote::Name<'repo>> { self.repo.branch_remote_name(self.name().shorten(), direction) } /// Find the remote along with all configuration associated with it suitable for handling this reference. /// /// See also [`Repository::branch_remote()`](crate::Repository::branch_remote()) for more details. pub fn remote( &self, direction: remote::Direction, ) -> Option<Result<crate::Remote<'repo>, remote::find::existing::Error>> { self.repo.branch_remote(self.name().shorten(), direction) } /// Return the name of this reference on the remote side. /// /// See [`Repository::branch_remote_ref_name()`](crate::Repository::branch_remote_ref_name()) for details. #[doc(alias = "upstream", alias = "git2")] pub fn remote_ref_name( &self, direction: remote::Direction, ) -> Option<Result<Cow<'_, FullNameRef>, branch_remote_ref_name::Error>> { self.repo.branch_remote_ref_name(self.name(), direction) } /// Return the name of the reference that tracks this reference on the remote side. /// /// See [`Repository::branch_remote_tracking_ref_name()`](crate::Repository::branch_remote_tracking_ref_name()) for details. #[doc(alias = "upstream", alias = "git2")] pub fn remote_tracking_ref_name( &self, direction: remote::Direction, ) -> Option<Result<Cow<'_, FullNameRef>, branch_remote_tracking_ref_name::Error>> { self.repo.branch_remote_tracking_ref_name(self.name(), direction) }}
use crate::repository::{branch_remote_ref_name, branch_remote_tracking_ref_name};
use crate::{remote, Reference};
use gix_ref::FullNameRef;
use std::borrow::Cow;
/// Remotes
impl<'repo> Reference<'repo> {
/// Find the name of our remote for `direction` as configured in `branch.<name>.remote|pushRemote` respectively.
/// Return `None` if no remote is configured.
///
/// See also [`Repository::branch_remote_name()`](crate::Repository::branch_remote_name()) for more details.
pub fn remote_name(&self, direction: remote::Direction) -> Option<remote::Name<'repo>> {
self.repo.branch_remote_name(self.name().shorten(), direction)
}
/// Find the remote along with all configuration associated with it suitable for handling this reference.
///
/// See also [`Repository::branch_remote()`](crate::Repository::branch_remote()) for more details.
pub fn remote(
&self,
direction: remote::Direction,
) -> Option<Result<crate::Remote<'repo>, remote::find::existing::Error>> {
self.repo.branch_remote(self.name().shorten(), direction)
}
/// Return the name of this reference on the remote side.
///
/// See [`Repository::branch_remote_ref_name()`](crate::Repository::branch_remote_ref_name()) for details.
#[doc(alias = "upstream", alias = "git2")]
pub fn remote_ref_name(
&self,
direction: remote::Direction,
) -> Option<Result<Cow<'_, FullNameRef>, branch_remote_ref_name::Error>> {
self.repo.branch_remote_ref_name(self.name(), direction)
}
/// Return the name of the reference that tracks this reference on the remote side.
///
/// See [`Repository::branch_remote_tracking_ref_name()`](crate::Repository::branch_remote_tracking_ref_name()) for details.
#[doc(alias = "upstream", alias = "git2")]
pub fn remote_tracking_ref_name(
&self,
direction: remote::Direction,
) -> Option<Result<Cow<'_, FullNameRef>, branch_remote_tracking_ref_name::Error>> {
self.repo.branch_remote_tracking_ref_name(self.name(), direction)
}
}