Version Control for School Projects?
I'm looking to version control my CS Projects so I can work on them from multiple locations. My school has a Linux lab, where we are required to place our projects once they're completed for grading.
So let's say I have the following structure on the Linux Lab
~/Work/CS/src/lib
~/Work/CS/src/project1
~/Work/CS/src/project2
~/Work/CS/src/project3
And so on...
When working on a class project, I will b开发者_如何学JAVAe placing header files and archives into src/lib, and source code into src/some_project
What's the best way to go about version controlling this? I want to make a private GitHub repository called "2011F" so I can put projects from other CS classes in there. But optimally, I would like to be able to cd into my CS directory on the Linux lab, then pull updated code from GitHub.
I'm not really sure what you want to hear :-D
Just add the entire Work directory to git, push when done with work in one place, pull when starting work somewhere else.
Btw. note that if the project aren't different for each student, putting your work on GitHub might not be the brightest idea (actually can get you into a lot of trouble).
Unfuddle provides free private repos. That's an option too.
Some suggestions
Although third-parties such as BitBucket offers private git -repos, this is by far better way i.e. bare-repos, SSH and Gitolite: How can I host Git repositories and manage my content-hosting myself?
Use submodules: create a git -repo for each independent project, create umbrella repo for
School2012
and then for each project$ git submodule add ball_game
. Alert how not to do it: Git: how to avoid repetitive committing with sub-sub-sub... Git -repos? i.e. create shallow repos.[Coming] Use Ticgit to monitor tickets when we get it working, more here. I think things such as Redmine or Trac are an overkill but anyway notice this outlining thread here and this ticket here.
精彩评论