Skip to main content

oxen.repo

Repo Objects

The Repo class that allows you to interact with your local oxen repo.

Examples

Init, Add, Commit and Push

Adding and committing a file to a remote workspace.

__init__

Create a new Repo object. Use .init() to initialize a new oxen repository, or pass the path to an existing one. Arguments:
  • path - str Path to the main working directory of your oxen repo.
  • mkdir - bool Whether to create the directory if one doesn’t exist. Default: False

init

Initializes a new oxen repository at the path specified in the constructor. Will create a .oxen folder to store all the versions and metadata.

clone

Clone repository from a remote url. Arguments:
  • url - str The url of the remote repository. ex) https://hub.oxen.ai/ox/chatbot
  • branch - str The name of the branch to clone. Default: main
  • all - bool Whether to clone the full commit history or not. Default: False

branches

List all branches for a repo

branch

checkout

Checkout a branch or commit id. Arguments:
  • revision - str The name of the branch or commit id to checkout.
  • create - bool Whether to create a new branch if it doesn’t exist. Default: False

add

Stage a file or directory to be committed.

add_schema_metadata

Add schema to the local repository

rm

Remove a file or directory from being tracked. This will not delete the file or directory. Arguments:
  • path - str The path to the file or directory to remove.
  • recursive - bool Whether to remove the file or directory recursively. Default: False
  • staged - bool Whether to remove the file or directory from the staging area.
  • Default - False
  • remote - bool Whether to remove the file or directory from a remote workspace.
  • Default - False

status

Check the status of the repo. Returns a StagedData object.

commit

Commit the staged data in a repo with a message. Arguments:
  • message - str The commit message.

log

Get the commit history for a repo.

set_remote

Map a name to a remote url. Arguments:

push

Push data to a remote repo from a local repo. Arguments:
  • remote_name - str The name of the remote to push to.
  • branch - str The name of the branch to push to.

pull

Pull data from a remote repo to a local repo. Arguments:
  • remote_name - str The name of the remote to pull from.
  • branch - str The name of the branch to pull from.
  • all - bool Whether to pull all data from branch history or not. Default: False

path

Returns the path to the repo.

current_branch

Returns the current branch.

merge

Merge a branch into the current branch.