Disecting my PhD git repo

I soon realized that the decision of taking everything i do on my PhD and put it in one git repository was no good.  Putting unrelated stuff in a git repository is, in my opinion, a no-no.  In the end, they are all related to what I do on my PhD, but they are not the same project.  I have a Matlab annotation application together with documents that specify how to make camera housings.

What convinced me to do something about this was the resulting disparity in the log.  The log will end up being a collection of groups of commits related to unrelated subset.  At the end the commits for a sub-project will be scattered all over the log and will be separated by commits of other sub-projects.  I know that I could still know what I did and when I did it but the resulting cacophony can be a setback for me and for the people who I might be collaborating with.

Another issue might be that I might want to keep some things private for some time before I release them.  Though this is possible with my current setup, I think it would be much easier with several git repositories.

Luckily for me git has something called “submodule”.  This allows one to have a repository automatically pulling from another repository.  Or, what I will probably end up doing, have a dummy PhD repository that will point to the rest of my PhD sub-projects.  The only thing I need to do now is find a way to make the process fully or semi automatic while at the same time not losing the history I have.  I trust git will have a pleasant surprise waiting for me when I do this in the weekend.

Advertisements

About joelgranados

I'm fascinated with how technology and science impact our reality and am drawn to leverage them in order to increase the potential of human activity.
This entry was posted in git. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s