For development that might involve changing external libraries, I'll use git subtree. See git subtrees: a tutorial
git remote add -f goai_libgdf https://github.com/gpuopenanalytics/libgdf.git
git subtree add -P libgdf goai_libgdf master
cat libgdf/.gitmodules >> .gitmodules
nano .gitmodules # prepend libgdf/ to thirdparty
git submodule init
git submodule update --remote --merge
git add -u .
git commit -m "add libgdf submodules"
git push
# to update libgdf from goai:
git subtree pull -P libgdf goai_libgdf master
# build/test/install libgdf
git push
# to update already cloned pearu-sandbox:
git pull
git submodule init
git submodule update --recursive --remote
# to clone pearu-sandbox:
git clone --recurse-submodules [email protected]:Quansight/pearu-sandbox.git
git pull
git remote add -f goai_pygdf https://github.com/gpuopenanalytics/pygdf.git
git subtree add -P pygdf goai_pygdf master
git push
# to update pygdf from goai:
git subtree pull -P pygdf goai_pygdf master