git和github - [git]
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://glorywine.blogbus.com/logs/35919064.html
以前项目管理使用的是CVS和SVN, 这两个算得上是老牌的项目管理工具了. 现今, 又多了Git, Mercurial和Bazaar这些管理工具.
自己平时没事的时候会写些程序, 因为有几台机器, 所以需要一个代码仓库来进行项目管理. 在网上google了一下, 发现了github, 非常不错, 一般的用户可以创建N个项目, 只要总容量不超过300M就行, 对于我来说够用了.
在这里记录一下github的使用方法, 以后方便查阅.
至于git的安装和设置就不再累述了, google之.
先注册github, 然后点击创建新项目.
这样就转到了项目创建页面, 这里姑且将项目命名为github example吧. 因为是free user, 所以只能创建公共项目, 任何人都可以看到, 如果想创建私有项目, 嘿嘿, 交钱吧. 点击"Create Repository", 就完成了github的创建过程. 跳转的也面会有详细的创建指导.
好的, 现在就要开始本地工作了. 照着上面的提示进行:
cd github-example
创建项目文件夹, 切换到项目目录.
touch README
git add README
初始化当前项目, 这样, 我们就可以使用git来行进项目管理了.
创建README, 该文件主要是供github进行显示的, 一会我们可以看到.
将README添加到git的索引中.
OK, 到这里, 我们可以进行代码提交了. 并且指定message为'first commit'. 其实, 可以将add和commit合并到一起进行处理:
需要注意的是, git并不是一定要依赖服务器的, 他完全可以进行本地操作.
git push origin master
接着添加远程服务器, 最后将本地代码推送到服务器上. 然后就可以到github上看结果了. 看到了吗?
好了, 继续. 给README添加一些内容. 在这里我就将刚才的那些命令添加进去. 然后就是add, commit, push了.应该熟悉了吧? 刷新github上的页面, 看到什么了?
看到了吧, 现在知道README的作用了吗?
现在我有了一个新点子, 想给项目添加新的功能, 但是我又不想改变已有的项目功能, 怎么办? 很简单, 创建branch.
git branch
git checkout new_feature
touch test.py
git add test.py
git commit -m 'add new feature'
git remote add new_feature git@github.com:wangchang/github-example.git
git push origin new_feature
这里需要说明的是git branch这个命令, 后面如果跟着一个字符串, 那么就是创建相应的branch. 如果只是git branch, 就会显示当前项目所有的branch, 前面有"*"号的表示当前的branch. 而checkout命令就进行了工作空间里branch的切换. 完成了所有的命令后, 再到github里看看, 是不是Source->all branches里多乐new_feature这个branch.
好了, 这个功能我觉得不错, 想合并到主branch里, 这时候就需要用到merge了.
git merge new_feature
git push
切换会master这个branch, 然后merge需要的branch, 再推送到github.
github又一个非常帮的功能, 就是network, 在这里会以图像的方式显示项目的发展过程.
好了, 今天先到这里, 有兴趣的朋友也可以试试. 以后有了新发现在到这里分享吧.