版本控制-Git

作者: 逸飞u | 来源:发表于2016-04-02 16:43 被阅读64次

    源代码版本管理的基本概念

    举例

    • VCS
    • SCM
    • CVS,SVN,ClearCase
    • Git,Mercurials

    分类:

    • 基于文件的:RCS,SCCS
    • 基于中心服务器的:CVS,SVN,SS,TFS
    • 分布式的:Git,Mercurial,Bazaar

    用途

    • 备份:改回原来版本
    • 协作:合并、解决冲突

    Git

    特点

    • 基于commit进行管理,而不失文件
    • 独特的staging area(暂存工作区)

    基本用法

    上传下载
    • git init//在本地建立一个新仓库
    • git clone url// 从服务器上克隆一个仓库到本地
    • git remote add name url //管理远程仓库
      • git pull [name branch]//下载
      • git push name branch //上传
    • git add//
    • git commit
    撤销修改
    • 撤销仅在工作副本中的修改
      git checkout --file

    • 撤销已经登记到 stage 中的修改
      git reset HEAD file //(退回到工作副本)
      git reset --hard HEAD file//(退回到最后一次提交状态)

    • 撤销已提交到本地仓库的修改
      git revert<commit rev>//(抵消)
      git reset -hard <commit rev>//(撤销)

    • 撤销已经推送到服务器中的修改
      git revert

    Branch 和 Tag

    • 用途:长期 重大修改
    • 创建:git branch name(自动提供主提交流名为 :master)
    • 使用:也是commit 指针
    • 合并:
    • 结束: git branch -d name

    版本发行等,适合用 Tag 做记录
    annotated:git tag -a name[rev]
    lightweight:git tag name [rev]

    注意:tag 不会自动推送给 remote

    Git特色: rebase

    操作演示 in Xcode

    1.在创建project时选择Git支持

    14595834623948.jpg

    2.这样在项目菜单中的source control 中就有相关的选项了

    14595836201769.jpg 14595836371149.jpg

    3.做一个修改后 相关的文件就回显示一个M的标记

    14595838178567.jpg

    4.commit,会显示修改的内容

    14595839853685.jpg 14595839925907.jpg

    5.这样在历史中就可以看到版本的情况了

    14595840222987.jpg

    6.如果要通过服务器保存代码的话,需要设置服务器信息

    14595841430602.jpg 14595841486465.jpg

    7.然后通过check out 功能选择项目

    14595842565696.jpg 14595842617667.jpg

    8.push to remote

    14595851854397.jpg

    几个视图

    • 比较
    14595853919594.jpg 14595854025445.jpg
    • Blame视图
    14595854406216.jpg 14595854552921.jpg
    • log
    14595854772913.jpg 14595854831557.jpg

    相关文章

      网友评论

        本文标题:版本控制-Git

        本文链接:https://www.haomeiwen.com/subject/iyaylttx.html