I want to use a project as a tool-set for a big ole work project. The sub-project isn’t mine, I don’t have access to the code, I will probably need to update it as a component of my big project.
Some good reading here: https://hpc.uni.lu/blog/2014/understanding-git-subtree/
Some of my first tip-toe basic understanding.
# Straight subtree pulls the dependency into local directory
git subtree add --prefix CMB2 https://github.com/WebDevStudios/Custom-Metaboxes-and-Fields-for-WordPress.git master --squash
Apparently this can get better if you use the
git remote[code] command.
# Setup dependency as a remote
git remote add -f Custom-Metaboxes-and-Fields-for-WordPress https://github.com/WebDevStudios/CMB2.git
# Fetch information about remote
git fetch Custom-Metaboxes-and-Fields-for-WordPress master
# Add remote to subdirectory and pull master branch
git subtree add --prefix=CMB2 --squash CMB2/master
# Update remote down into local directory
git subtree pull --prefix CMB2 CMB2 master --squash
With the remote added we should be able to update the dependency project by doing a subtree pull. Remember the sub-project is not mine but it will need updating.
git subtree pull --prefix Custom-Metaboxes-and-Fields-for-WordPress Custom-Metaboxes-and-Fields-for-WordPress master --squash