你的github-通过坚果云管理您的代码

这几天不少”果仁”(坚果用户)通过各种渠道咨询如何通过坚果云同步和备份代码. 目前采用的方式通常是将代码直接放在坚果云中,  每次修改自动同步,  这样做有几个问题:

  • 坚果云的版本历史是自动保存的, 不能添加版本信息. 对于代码而言, 不方便找回和比对历史代码;
  • 专业的代码管理工具(Git/Hg/SVN)能够很容易查看用户对所有代码进行的每次修改, 易于分析bug的来源, 而坚果云不能提供这样的功能
  • 如果将eclipse等IDE的workspace直接放于坚果云中, 假如因为同步不及时造成冲突, 因为文件众多而且涉及到很多IDE相关文件, 可能导致IDE无法正常打开.
  • 编译, 重构等自动化工作引发的同步, 容易导致大量的带宽占用

幸运的是, 我们推荐用如下的方法利用坚果云同步代码, 可以完全保留代码管理工具的长处, 同时利用坚果云提供的自动同步和备份功能.

假设你用的是Git, 当前的开发目录叫”~/projects”, 而坚果云路径为”~/Nutstore”, 进行如下操作:

  • ~/projects $>git init            (注释: 初始化git repository)
  • ~/projects $> git add .
  • ~/projects $> git commit -m “first commit”
  • ~/projects $> mkdir -p ~/Nutstore/git/project   (注释: 在坚果云中创建bare git repository)
  • ~/projects $> cd ~/Nutstore/git/project
  • ~/Nutstore/git/project $> git init –bare
  • ~/Nutstore/git/project $> cd ~/project (注释: push代码到坚果云中)
  • ~/project $> git remote add orig ~/Nutstore/git/project
  • ~/project $> git push orig master

这样在所有电脑上都可以正常的进行git pull & git push, 以后每次修改代码只需commit, 然后将代码push到~/Nutstore/git/project即可享受到git+坚果云的所有好处. 如下:

  • ~/project $> git push orig master

假如你用的hg/Mercurial, 按照如下流程操作:

  • ~/projects $> hg init            (注释: 初始化hg repository)
  • ~/projects $> hg add
  • ~/projects $> hg commit -m “first commit”
  • ~/projects $> mkdir -p ~/Nutstore/hg/project   (注释: 在坚果云中创建bare hg repository)
  • ~/projects $> cd ~/Nutstore/hg/project
  • ~/Nutstore/hg/project $> hg init
  • ~/Nutstore/hg/project $> cd ~/project (注释: push代码到坚果云中)
  • ~/project $> echo “[paths]\ndefault = ~/Nutstore/hg/project\n” > .hg/hgrc
  • ~/project $> hg push

这样在所有电脑上都可以正常进行 hg push & hg pull, 以后每次修改代码只需commit, 然后将代码push到~/Nutstore/hg/project即可享受到hg+坚果云的所有好处. 如下:

  • ~/project $>hg push

备注:

如果你想了解git和hg的用法, 下面是很好的入门材料.

git: http://book.git-scm.com/

hg: http://hginit.com/

 

此条目发表在 其他 分类目录。将固定链接加入收藏夹。

评论功能已关闭。