Skip to main content

Git

Git is a distributed version control system that tracks changes in any set of computer files, usually used for coordinating work among programmers collaboratively developing source code during software development.

This notebook shows how to load text files from Git repository.

Load existing repository from diskโ€‹

%pip install --upgrade --quiet  GitPython
from git import Repo

repo = Repo.clone_from(
"https://github.com/langchain-ai/langchain", to_path="./example_data/test_repo1"
)
branch = repo.head.reference
from langchain_community.document_loaders import GitLoader
API Reference:GitLoader
loader = GitLoader(repo_path="./example_data/test_repo1/", branch=branch)
data = loader.load()
len(data)
print(data[0])
page_content='.venv\n.github\n.git\n.mypy_cache\n.pytest_cache\nDockerfile' metadata={'file_path': '.dockerignore', 'file_name': '.dockerignore', 'file_type': ''}

Clone repository from urlโ€‹

from langchain_community.document_loaders import GitLoader
API Reference:GitLoader
loader = GitLoader(
clone_url="https://github.com/langchain-ai/langchain",
repo_path="./example_data/test_repo2/",
branch="master",
)
data = loader.load()
len(data)
1074

Filtering files to loadโ€‹

from langchain_community.document_loaders import GitLoader

# e.g. loading only python files
loader = GitLoader(
repo_path="./example_data/test_repo1/",
file_filter=lambda file_path: file_path.endswith(".py"),
)
API Reference:GitLoader

Was this page helpful?


You can also leave detailed feedback on GitHub.