zoukankan      html  css  js  c++  java
  • iOS:Git分布式版本控制器系统

    Git的使用

    1、Git简介:
    Git是一个开源的分布式版本控制系统。与SVN、CVS相比
    分布式
       不需要中心仓库
    Git的版本号都是生成的一个哈希值,比如:bbaf6fb5060b4875b18ff9ff637ce118256d6f20
    性能
       分支与合并是比较简单
       对比快
       存储空间少
     
    2、Git的作用:
    可以利用它来追踪项目中的文件
    可以和合作伙伴共享版本历史状态
    可以将合作伙伴的工作和你的工作进行合并
    可以对整个工程或某些文件跟历史版本进行比较或者恢复到早期的某个版本。
     
    3、Git术语:
    Repository 包括本地库和远程库
    Pull / Push / Checkout / Fetch :上传、获取
    Branch:分支
    Merge:合并
    Conflict:冲突
    Commit:提交
    Revert:恢复
    Working Directory:工作目录
     
    4、远程库(左图)和本地库(右图)截图如下:
     
    5、Git一些常用命令:
    获得仓库                获取信息
    git init                   git help
    git clone                 git status
                                git diff
    提交                      git log
    git add                   git show(显示改动情况)
    git commit
     
    6、Git命令的备忘流程:
     
     
    7、Git的工作流程:
    建立本地工作目录(init,clone)
    与远程仓库同步(pull,fetch)
    修改文件
    查看变更(show,status)
    载入变更(add or –a)
    提交载入的变更(commit)
    重复
    上传(push)
     
    8、第一个Git库:
    告诉Git你是谁
    git config –global user.name “xucons”
    git config –global user.email “xucons@gmail.com”
    创建一个库:git init
    克隆一个库:git clone git://git.kernel.org/scm/git/git.git
     
    9、远程仓库操作:
    git clone <仓库地址> 
    git remote –v 列出所有远程仓库
    git push <仓库名> <分支名> 推送本地分支更新到远程仓库
    git fetch  从远程仓库获取更新
    git pull  从远程仓库获取更新并merge本地分支
     
    10、Pull与Fetch区别:
    git fetch:相当于是从远程获取最新版本到本地,不会自动merge
    git pull:相当于是从远程获取最新版本并merge到本地,相当于git fetch 和 git merge 
    在实际使用中,git fetch更安全一些。因为在merge前,我们可以查看更新情况,然后再决定是否合并
     
    11、Git文件的状态变化图:
     
     
    12、常用文件操作命令:
    git status 查看文件状态
    git add <file> 跟踪新文件或暂存已修改文件
    git diff  查看文件变化
    git  commit –m <msg> 提交更新
    git rm file  移除文件
    git  log 查看提交日志
    git commit –ammend    修改最后一次提交
    git reset HEAD <file> 取消已暂存文件
    git checkout -- <file> 取消文件修改
     
    13、查看历史版本:
    可以通过git log 命令来查看历史版本的提交
    git log的操作都是本地操作,基本都能瞬间完成,比SVN快很多,查看历史版本或进行diff比较都非常方便
    也可以通过git revert操作来回退到历史版本
     
    14、revert和reset:
    reset
       将当前的工作目录完全回滚到指定的版本号
    revert
       还原一个版本的修改,必须提供一个具体的Git版本号,例如'git revert bbaf6fb5060b4875b18ff9ff637ce118256d6f20' 
    区别
       reset是指将当前head的内容重置,不会留任何痕迹。
       revert是撤销某次提交,但是这次撤销也会作为一次提交进行保存。
     
     
    15、Rebase:
    nrebase命令执行后,实际上是将分支点从C移到了G,这样分支也就具有了从C到G的功能
     
    16、分支与标记:
    分支
    创建分支
        git branch <name>
        git branch <name> <commit-id>
    删除分支
        git branch -d <name>
    查看分支
        git branch
        git branch -r”   //remote branch
    转动某一分支
        git checkout <commit-id>
        git checkout -b <name> <commit-id>
    分支合并
        git merge <name> //合并指定的分支到当前分支
    标记
        标记只是一个方便人识别某次提交的一个标签
        git tag <tag-name>
     
    17、GitHub介绍:
    GitHub是一个基于web与git的托管项目服务,你可以这里托管你的代码。
     
    18、xcode7 git没法用,在终端输入如下命令即可:
    git config --global user.email  your@email.com     
    git config --global user.name @"your name"

     

    19、总结:
    Git是一个很棒的工具进行协作
    难以在短时间内精通,需要在日常使用中不断学习,,,,,

     

  • 相关阅读:
    COGS 859. 数列
    9.7noip模拟试题
    hash练习
    9.6noip模拟试题
    9.5noip模拟试题
    poj 2117 Electricity
    洛谷P1993 小 K 的农场(查分约束)
    9.2noip模拟试题
    洛谷 P1273 有线电视网(dp)
    面试题收集
  • 原文地址:https://www.cnblogs.com/XYQ-208910/p/4917479.html
Copyright © 2011-2022 走看看