git学习——<四>git版本管理

一、git版本管理的优势

  都说git比svn强大,强大在哪呢?

  首先,从部署上说:svn、cvs都是集中式的,一台服务器上部署服务,所有客户端编写的代码都要提交到该服务器上。git是分布式的,所有人都可以从同一个版本库上克隆相同的版本库到自己的机子上。

  这有什么好处呢?

  1.使用svn和cvs,提交和check代码,你必须和服务器连上网,否则肯定不能用。git本地就是版本库,所以,你不链接其他机子也能提交到版本库中。

  2.每个人都有一个版本库,不担心服务器会挂掉。

  3.也可以实现一台机子进行代码管理,让一台机子7*24运行着,大家都把自己版本库里的东西提交给它,也从它那里check别人的代码

  其次,svn和cvs收集代码,是将每次提交的文件都会保留一个副本,那怕你只有一个空格的改变,也会创建一个新文件,但是git只记录每次修改了什么,没修改的不会记录,这样势必保存的文件小,服务器磁盘压力小。

二、同步远程仓库

  我们使用github提供的远程仓库,登录github并创建初始化一个仓库。

  1.要使用ssh先创建本地密钥

 $ ssh-keygen -t rsa -C"youremail@example.com"

  会在/root/.ssh目录下生成id_rsa(私钥)和id_rsa.pub(公钥),然后在github账户里添加公钥文件中的内容到你声明的公钥中。

  然后将公钥中的内容添加到github的ssh key中。添加了公钥之后,github就能认识到对版本库的修改是否是你本人了。

  注意:在github上创建版本库时,一定要勾选init,否则本地版本库无法连接到该远程库。

   2.设置

  默认名称是origin

git remote add 名称(随你起,要能记住) git@github.com:michaelliao/learngit.git(自己的库地址)

  3.推送

git push 名称(同前面起的名称一致) master

三、克隆远程库

  克隆远程库

git clone 地址

  git自动把本地的master分支和远程master分支对应起来了,并且,远程仓库的默认名称是origin

  可以使用git remote -v显示更详细的内容

  推送分支

    git push origin master:将本地的master分支推向远程
    git push origin dev:将本地的dev分支推向远程

 

posted @ 2015-08-21 19:59  brightshi  阅读(348)  评论(0编辑  收藏  举报