diff options
Diffstat (limited to 'packages/server/src/git/branch.ts')
-rw-r--r-- | packages/server/src/git/branch.ts | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/packages/server/src/git/branch.ts b/packages/server/src/git/branch.ts index 85f83be..0819f3c 100644 --- a/packages/server/src/git/branch.ts +++ b/packages/server/src/git/branch.ts @@ -61,4 +61,16 @@ export class Branch extends Reference { .then(() => true) .catch(() => false); } + + /** + * Returns all of a repository's branches + * + * @param owner - An instance of a repository + * @returns An array of branch instances + */ + public static async getAll(owner: Repository): Promise<Branch[]> { + const references = await owner.ng_repository.getReferences(); + + return references.filter(ref => ref.isBranch()).map(ref => new Branch(owner, ref)); + } }
\ No newline at end of file |