• 版本管理


    Git 是一个分布式的版本管理系统,而 SVN 是一个集中式管理系统。

    版本控制

    • Git与SVN的对比
      对比 SVN Git
      工作方式 集中式 分布式
      文件管理 增量式 系统快照
      权限控制 对团队中参与开发的人员进行权限控制 可接受团队外开发者贡献的代码并审核
    • 版本控制工具分类
      • 集中式版本控制工具(SVN、CVS)

        缺点:服务器故障将产生单点故障

      • 分布式版本控制工具(Git、Mercurial、Bazaar...)

        优点:本地具有完整版本历史

    Git 简介

    • Git 资源

    • Git 优势

      • 大部分操作在本地完成不需要联网
      • 完整性保证
      • 尽可能添加数据而不是删除或修改数据
      • 分支操作非常快捷流畅
      • 与 Linux 命令全面兼容
    • Git 结构

      • 本地结构
    • GitHub(代码托管中心)

    • 本地库和远程库

      • 团队内协作

      • 团队外协作

    命令行操作

    • 本地库操作

      • 本地库初始化

        • 命令

          git init
          
        • 效果

        • 注意:.git 目录中存放的是本地库相关的子目录和文件,不要删除和修改。

      • 设置签名

        • 形式
          用户名:clxye
          Email: chenlia2602@sina.com
          
        • 作用:区分不同开发人员的身份
        • 辨析:这里设置的签名和登陆远程库(代码托管中心)的账号、密码没有任何关系
        • 命令
          • 项目级别/仓库级别:仅在当前本地库范围内有效
            // 设置本地账号信息
            git config user.name clxye
            git config user.emal chenlia2602@sina.com
            
            // 查看保存的信息
            cat .git/config
            
          • 系统用户级别:登陆当前操作系统的用户范围
            // 设置系统账号信息
            git config --global user.name clxye
            git config --global user.emal chenlia2602@sina.com
            
            // 查看保存的信息
            cat ~/.gitconfig
            
          • 级别优先级
            • 就近原则:项目级别优先于系统用户级别,二者都有时采用项目级别的签名
            • 如果只有系统用户级别的签名,就以系统用户级别的签名为准
            • 二者都没有不允许
      • 状态查看操作

        git status
        

        查看工作区、暂存区状态

      • 添加操作

        git add [file name]
        

        将工作区的 “新建/修改” 添加到暂存区

      • 提交操作

        git commit -m "commit message" [file name]
        

        将暂存区的内容提交到本地库

      • 查看历史记录

        // 详细日志信息
        git log
        
        // 简洁日志信息
        git log --pretty=oneline
        
        // 最简洁日志信息(只显示当前及以前版本日志)
        git log --oneline
        
        // 移动到当前版本需要多少步(显示所有日志)
        git reflog
        

      • 前进后退


        // 基于索引值(只需包含 git log --oneline 中的hash值)
        git reset --hard 9a9ebe0
        
        // 使用^符号(只能后退,一个^后退一步,N个后退N步)
        git reset --hard HEAD^
        
        // 使用~符号(只能后退,后退n步)
        git reset --hard HEAD~3
        
      • 删除文件并找回

        git 
        



      • 比较文件差异

        git 
        



      • 命令帮助

        git 
        



    • 远程库操作

    Git 图形化界面操作

    Gitlab 服务器环境搭建

  • 相关阅读:
    AngularJS入门教程
    mobile web retina 下 1px 边框解决方案
    Python字典猜解
    20145313exp9
    20145313张雪纯Exp8 Web基础
    20145313张雪纯exp7
    20145313张雪纯信息搜集与漏洞扫描
    计算机病毒静态分析2
    计算机病毒静态分析1
    20145313张雪纯MSF基础应用实验
  • 原文地址:https://www.cnblogs.com/clxye/p/10354874.html
Copyright © 2020-2023  润新知