zoukankan      html  css  js  c++  java
  • Git版本控制器

    一、介绍

    github:代码社区
    svn:版本控制器
    git:版本控制器
    
    版本控制器:可以管理编写的代码的仓库(文件夹),可以记录对仓库中所有被监测文件的任意操作过程
    
    多个人协同开发,一定会遇到代码整合 - 方便程序员完成代码整合
    目的:达到多人协同开发
    
    git:分布式集群、多分支管理

    二、git安装

    1.下载对应版本:https://git-scm.com/download
    2.安装git:在选取安装路径的下一步选取 Use a TrueType font in all console windows 选项
            -- 安装成功后桌面右键可以看到git菜单

    三、工作流程图

    四、搭建本地git仓库

    1 将已有的文件夹作为git仓库

    >: cd 目标文件夹内部
    >: git init

    2 在指定目录下创建git仓库

    >: cd 目标目录
    >: git init 仓库名

    3 配置操作git的用户信息

    >: git config user.name '用户名'
        -- 用户名
    >: git config user.email '用户邮箱'
        -- 用户邮箱
        
    eg:
    >: git config user.name 'jason'
    >: git config user.email 'jason@163.com'
    当前仓库-局部
    >: git config --global user.name '用户名'
    >: git config --global user.email '用户邮箱'
    当前仓库-全局

    4 常用指令

    # 当仓库中有文件增加、删除、修改,都可以在仓库状态中查看
    >: git status  
        -- 查看仓库状态
    >: git status -s  
        -- 查看仓库状态的简约显示
    查看仓库状态
    # 通过任何方式完成的文件删与改
    # 空文件夹不会被git记录
    工作区操作
    >: git checkout .
        -- 撤销所有暂存区的提交
    >: git checkout 文件名
        -- 撤销某一文件的暂存区提交
    撤销工作区操作:改、删
    >: git add .  
        -- 添加项目中所有文件
    >: git add 文件名  
        -- 添加指定文件
    工作区内容提交到暂存区
    >: git reset HEAD .
        -- 撤销所有暂存区的提交
    >: git reset 文件名
        -- 撤销某一文件的暂存区提交
    撤销暂存区提交:add的逆运算
    # git commit -m "版本描述信息"
    提交暂存区内容到版本库
    回滚暂存区已经提交到版本库的操作:
        查看历史版本:
            >: git log
            >: git reflog
        查看时间点之前|之后的日志:
            >: git log --after 2018-6-1
            >: git log --before 2018-6-1
            >: git reflog --after 2018-6-1
            >: git reflog --before 2018-6-1
        查看指定开发者日志
            >: git log --author author_name
            >: git reflog --author author_name
        回滚到指定版本:
            回滚到上一个版本:
                >: git reset --hard HEAD^
                >: git reset --hard HEAD~1
            回滚到上三个版本:
                >: git reset --hard HEAD^^^
                >: git reset --hard HEAD~3
            回滚到指定版本号的版本:
                >: git reset --hard 版本号
                >: eg: git reset --hard 35cb292
    撤销版本库提交:commit的逆运算

    5  过滤文件(过滤一些项目中不需要提交的文件)

    # .gitignore 文件
    # 1)在仓库根目录下创建该文件
    # 2)文件与文件夹均可以被过滤
    # 3)文件过滤语法
    
    """ 过滤文件内容
    文件或文件夹名:代表所有目录下的文件或文件夹都被过滤
    /文件或文件夹名:代表仓库根目录下的文件或文件夹被过滤
    /目录/文件或文件夹名:代表特定目录下的文件或文件夹被过滤
    *可以出现在任何位置,代表模糊匹配
    
    在仓库刚刚初始化就应该设置过滤规则(过滤文件本身不用被过滤)
    View Code

    6 git相比vs svn 的优势

    # 1、git是分布式的,每一个客户端均可以作为服务器为其他客户端提供代码
    # 2、git有强大的分支管理机制,可以在子分支上开发,将最终的成果同步到主分支即可
  • 相关阅读:
    Java中会存在内存泄漏吗,请简单描述。
    什么是类加载器
    通俗易懂 索引、单列索引、复合索引、主键、唯一索引、聚簇索引、非聚簇索引、唯一聚簇索引 的区别与联系
    Redis真的那么好用吗
    java中public,private,protected和default的区别
    聚集和非聚集索引
    我以为我对Mysql索引很了解,直到我遇到了阿里的面试官(转)
    Java中存储金额用什么数据类型
    InnoDB在MySQL默认隔离级别下解决幻读
    android应用程序第一次启动时显示引导界面
  • 原文地址:https://www.cnblogs.com/lich1x/p/11540987.html
Copyright © 2011-2022 走看看