git-filesystem
TypeScript icon, indicating that this package has built-in type declarations

0.0.6 • Public • Published

git-filesystem

A shared abstraction for cloud Git providers exposing a file-system-like API. Use this to read & write to repositories like they're file systems.

Supports:

  • GitHub 🚧
  • GitLab 🚧
  • BitBucket 🚧

Exposes methods for:

  • Creating a repository

  • Deleting a repository

  • Searching for repositories

  • Creating a file

  • Overwriting a file

  • Deleting a file

  • Creating tags

  • Reading files from tags

Installation

npm install git-filesystem

Example Usage

import { ClientFactory } from "git-filesystem";

const gitHubClient = new ClientFactory().getClientForProvider(
  "github",
  "github-username",
  "access-token",
  "user-agent-name"
);
// or
const gitLabClient = new ClientFactory().getClientForProvider(
  "gitlab",
  "gitlab-username",
  "access-token",
  "user-agent-name"
);
// or
const bitBucketClient = new ClientFactory().getClientForProvider(
  "bitbucket",
  "bitbucket-username",
  "access-token",
  "user-agent-name"
);

// and then

const gitHubRepository = gitHubClient.getRepository("repository-name");

let fileContent = await gitHubRepository.readFile("file/path.txt");
fileContent += "\n\nNewData";

await gitHubRepository.updateFile("file/path.txt", fileContent);

License

git-filesystem is licensed under the ISC License.

Readme

Keywords

none

Package Sidebar

Install

npm i git-filesystem

Weekly Downloads

736

Version

0.0.6

License

ISC

Unpacked Size

5.53 kB

Total Files

9

Last publish

Collaborators

  • tobysmith568