Git Subtree Cheatsheet

· 142 words · 1 minute read

git subtree: Manage project dependencies as subprojects.

Add a Git repository as a subtree:

git subtree add --prefix=path/to/directory/ --squash repository_url branch_name

Update subtree repository to its latest commit:

git subtree pull --prefix=path/to/directory/ repository_url branch_name

Merge recent changes up to the latest subtree commit into the subtree:

git subtree merge --prefix=path/to/directory/ --squash repository_url branch_name

Push commits to a subtree repository:

git subtree push --prefix=path/to/directory/ repository_url branch_name

Extract a new project history from the history of a subtree:

git subtree split --prefix=path/to/directory/ repository_url -b branch_name

For more information, check out this Debian manpage: https://manpages.debian.org/latest/git-man/git-subtree.1.html .

I hope this post helps you. If you know a person who can benefit from this information, send them a link of this post. If you want to get notified about new posts, follow me on YouTube , Twitter (x) , LinkedIn , Facebook , Telegram and GitHub .

Share: