version-control - 准备和支持我的第一个非学校项目

标签 version-control

因此,我决定开始一个个人编程项目,只是为了尝试提高我的编程技能并提高我更好地组织自己的能力。

问题是到目前为止我只完成了小型作业,每个 Java 项目最多几个类(当然是文件)。我们在上一个冬季学期学习了继承和基本数据结构(链表和堆栈),目前正在学习数据结构和算法以及 C++ 高级程序设计。我打算用 C++ 来做这个项目,因为它将帮助我完成类(class)。

这意味着我没有组织大型项目及其所需的所有经验。我希望得到一些与我已经讨论过的内容相关的一般性建议。我还没有一个项目想法,我知道这会对解决这个问题有很大帮助。

我特别关心的一件事是备份,因为它可以保证我的项目安全以及从其他计算机访问的能力。我已经使用 Dropbox 来做我所有类(class)的作业有一段时间了,但在听说他们的隐私问题后,我真的不想在上面放任何重要的东西。有什么好的服务可以私密且安全地备份代码,但这样我仍然可以使用它而无需不断地重新下载以解密。或者我应该为此烦恼并将其开源吗?不管怎样,如果解决方案最好是免费的或非常便宜的话那就太好了。

无论哪种情况,我都在考虑尝试某种版本管理,但我再次对此知之甚少,甚至一无所知。我正在考虑使用 NetBeans,因为它可以满足我在学校所需的一切,所以我也可以使用它,所以版本管理应该与它一起工作。另外,我的首选操作系统是 Windows 7 64 位。

我听说过有关 Git 的好消息,但显然 NetBeans 只能与本地 Git 存储库配合使用,因此我不确定它与在线存储库的配合效果如何。

还有一个关于版本控制的简单问题:在将程序上传到版本管理系统之前,程序是否应该处于某种工作状态,无论是否在开源网站上?

我知道我问了很多,而且我敢打赌我还可以问更多的事情。我正在寻求尽可能多的建议,因为我真的觉得我不知道自己在做什么或让自己陷入困境。

编辑:当然,代码应该能够在离线状态下运行,例如当我坐火车回家时。

最佳答案

自 NetBeans7.0.1(根据 Plan for Git support )起,NetBeans 支持向远程 Git 存储库进行拉取/推送操作。
所以你可以使用它:

当您使用 DVCS(Git 或 Mercurial) checkin 时,您不需要拥有稳定的项目,因为您仅在本地存储库中提交。如果您在备份存储库(例如您的 USB key )上发布,则没关系。
这些中间提交称为“检查点提交”:请参阅“git newbie question - Commit style: Commit all changed files at once or one at a time?

但是,如果您要在公共(public)存储库上发布(其他存储库无法克隆),那么最好先清除您的提交历史记录。

关于version-control - 准备和支持我的第一个非学校项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7524652/

相关文章:

混帐针导入 : how to make one master branch?

svn - 将公司从 SVN 转换为 Hg?

xcode 无法识别 Git 项目

java - 使用Ant进行Java部署:帮助进行版本控制,测试等,以实现更好的构建

version-control - TFS——级联分支机构的可持续性

eclipse - 在 SVN 中重新应用之前恢复的提交

svn - 了解 Subversion 存储库中合并冲突的历史记录

git - 我可以制作一个用户特定的 gitignore 文件吗?

android - 如何在一个 git repo 中管理多个相关的 Android 项目

version-control - Mercurial:无需先更改即可创建分支