我希望版本控制我的CS项目,以便我可以从多个位置处理它们。我的学校有一个Linux实验室,我们需要在完成评分后放置我们的项目。
因此,假设我在Linux Lab上有以下结构
~/Work/CS/src/lib
~/Work/CS/src/project1
~/Work/CS/src/project2
~/Work/CS/src/project3
等等......
在处理类项目时,我将头文件和存档放入src / lib,源代码放入src / some_project
控制版本的最佳方法是什么?我想创建一个名为“2011F”的私有GitHub存储库,这样我就可以将其他CS类的项目放在那里。但最佳的是,我希望能够在Linux实验室中进入我的CS目录,然后从GitHub中提取更新的代码。
答案 0 :(得分:2)
我不确定你想听到什么:-D
只需将整个工作目录添加到git,在一个地方完成工作时推送,在其他地方开始工作时拉动。
顺便说一下。请注意,如果每个学生的项目没有不同,那么将您的工作放在GitHub上可能不是最明智的想法(实际上可能会让您遇到很多麻烦)。
答案 1 :(得分:0)
Unfuddle提供免费私人回购。这也是一个选择。
答案 2 :(得分:0)
一些建议
虽然BitBucket等第三方提供私有git -repos,但这是更好的方式,即裸回购,SSH和Gitolite:How can I host Git repositories and manage my content-hosting myself?
使用子模块:为每个独立项目创建一个git -repo,为School2012
创建伞形仓库,然后为每个项目$ git submodule add ball_game
创建伞形仓库。警告如何不这样做:Git: how to avoid repetitive committing with sub-sub-sub... Git -repos?即创建浅层回购。
[即将推出]使用Ticgit在我们开始工作时监控门票,更多here。我认为像Redmine或Trac这样的东西是一种矫枉过正,但无论如何都要注意这个概述线程here和这张票here。