一、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分支推向远程

git学习——<四>git版本管理的更多相关文章

  1. git学习(四) git log操作

    git log操作 log命令的作用:用于查看git的提交历史: git log命令显示的信息的具体含义: commit SHA-1 校验和  commit id Author 作者跟邮箱概要信息 D ...

  2. git学习——<五>git分支

    git学习——<一>git安装 git学习——<二>git配置文件 git学习——<三>git操作 git学习——<四>git版本管理 一.提出问题 今 ...

  3. git学习(四):理解git暂存区(stage)

    与一般的版本管理不同的是,git在提交之前要将更改通过git add 添加到暂存区才能提交(git commit).即使是已经交给了git来管理的文件也是如此.这里继续学习git的暂存区. 通过git ...

  4. git学习四:eclipse使用git提交项目

    支持原创:http://blog.csdn.net/u014079773/article/details/51595127 准备工作: 目的:eclipse使用git提交本地项目,提交至远程githu ...

  5. git 学习(1) ----- git 本地仓库操作

    最近在项目中使用git了,在实战中才知道,以前学习的git 知识只是皮毛,需要重新系统的学一下,读了一本叫  Learn Git in a Month of Lunches 的书籍,这本书通俗易懂,使 ...

  6. Git 学习之Git 基础(二)

    Git 基础 读完本章你就能上手使用 Git 了.本章将介绍几个最基本的,也是最常用的 Git 命令,以后绝大多数时间里用到的也就是这几个命令.读完本章,你就能初始化一个新的代码仓库,做一些适当配置: ...

  7. Git 学习之 Git Basics

    最近在用git,但git学习曲线实在是有点高. 好在找到一个文档 https://www.atlassian.com/git/tutorial/,以下就是学习笔记吧! git init git ini ...

  8. git学习——<三>git操作

    一.创建仓库 创建一个目录 mkdir repository cd到该目录下,初始化该版本库 git init 至此,版本库创建成功,可以在该文件夹下看到.git文件夹,ls -ah可以看到该文件夹. ...

  9. git 学习记录—— git 中的仓库、文件状态、修改和提交操作等

    最近开始学习使用版本控制工具  git .学习方式主要通过阅读 git 网站上的 Pro git 和动手实践,使用的系统为 Ubuntu16.04LTS,以及 Windows 8.1. 本文主要关注 ...

随机推荐

  1. 华农校赛--G,用set比较大小,缩短时间复杂度

    Array C Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 581  Solved: 101[Submit][Status][Web Board] D ...

  2. nodeJs should+mocha+istanbul 测试 遇到的坑

    .istanbul 和 mocha 结合进行nodejs测试的时候最后执行 istanbul cover _mocha test.sqrt.js的时候报错 如图: 用 ../node_modules/ ...

  3. wcf客户端终结点样本集合

    1. <bindings> <basicHttpBinding> <binding name="BasicHttpBinding_IUser" /&g ...

  4. 扩展RBAC用户角色权限设计方案<转>

    RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联.简单地说,一个用户拥有若干角色,每一个角色拥有若干权限.这样,就构造成“用户-角色- ...

  5. 二分 + 模拟 - Carries

    Carries Problem's Link Mean: 给你n个数,让你计算这n个数两两组合相加的和进位的次数. analyse: 脑洞题. 首先要知道:对于两个数的第k位相加会进位的条件是:a%( ...

  6. post 获取checkbox值

    $str_tag=""; $s=$_POST['goods_server_name']; for($i=0;$i<count($s);$i++){ if($i==0){ $s ...

  7. linux下面bin,sbin不理解的查阅

    在一下的文件中得到答案, 突然想想自己有点傻,自己有代码,为什么不自己查看一下代码呢 http://blog.csdn.net/ithomer/article/details/9839957

  8. 设置两个WdatePicker的开始时间小于结束时间,结束时间大于开始时间

    contract_start_date_id为开始时间ID contract_end_date_id为结束时间ID $("#contract_start_date_id").bin ...

  9. JavaScript第三天 boolean和json

    布尔值 true:非零数字.非空字符串.非空对象 false:数字零.空字符串.null空对象.undefined  json JSON(JavaScript Object Notation) 是一种 ...

  10. python入门(八):连接mysql和STMP

    Python3 MySQL 数据库连接,使用 PyMySQL 连接数据库,并实现简单的增删改查.  mysql连接步骤 1.打开数据库连接 2.使用cursor()方法获取操作游标 3.执行sql和异 ...