Method: Rugged::Branch#remote_name

Defined in:
ext/rugged/rugged_branch.c

#remote_nameString

Get the name of the remote the branch belongs to.

If branch is a remote branch, the name of the remote it belongs to is returned. If branch is a tracking branch, the name of the remote of the tracked branch is returned.

Otherwise, nil is returned.

Returns:

  • (String)
[View source]

84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
# File 'ext/rugged/rugged_branch.c', line 84

static VALUE rb_git_branch_remote_name(VALUE self)
{
	git_reference *branch, *remote_ref;
	int error = 0;

	Data_Get_Struct(self, git_reference, branch);

	if (git_reference_is_remote(branch)) {
		remote_ref = branch;
	} else {
		error = git_branch_upstream(&remote_ref, branch);

		if (error == GIT_ENOTFOUND)
			return Qnil;

		rugged_exception_check(error);
	}

	return rb_git_branch__remote_name(
			rugged_owner(self),
			git_reference_name(remote_ref));
}