CNMAT / CNMAT-Externs

CNMAT Max/MSP externals
Other
96 stars 11 forks source link

Can OSC-kit dependency be handled with github nested #49

Closed adrianfreed closed 6 years ago

adrianfreed commented 8 years ago

repos?

mzed commented 7 years ago

I'm currently researching the pros and cons of git subtree and git submodule for a different project. Feel free to ask.

adrianfreed commented 7 years ago

I am interested in the outcome of these researches. One of the main reasons CNMAT software isn’t more widely used is that it is hard to install in one go and update reliably.

On Sep 4, 2017, at 00:45, Michael Zbyszyński notifications@github.com wrote:

I'm currently researching the pros and cons of git subtree and git submodule for a different project. Feel free to ask.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

mzed commented 7 years ago

Briefly, both git submodule and git subtee let you "nest" another git repository into another. Git repositories are atomic, so there isn't any git-centric way to put part of a repository into another. So, that's a bit annoying if a lot of project files, media, etc. are included in the repo you want to nest. It might be best to create a code-lib repo that is nested into other repos, either one with tests and projects or other, bigger things.

People hate git submodule, so that's the one IRCAM is using. :-) It's actually fine, but there are additional steps to get the submodule code after cloning the master repo. Essentially:

git clone myrepo
git submodule init
git submodule update

So, that's more difficult for users with minimal git experience.

Git subtree promises to make things easier. I haven't used it yet. This seems like a clear description: https://www.atlassian.com/blog/git/alternatives-to-git-submodule-git-subtree

One downside is that subtree adds the "sub" repository and all its history into your current repository. Submodule just adds a git reference.

equilet commented 6 years ago

closing in favor of https://github.com/CNMAT/CNMAT-OSC/issues/1