• git 基础二


    ××××××××××××××版本回退××××××××××××××××
    每一次git commit 就把文件的当前状态存储下来,这称为快照;
    方便回退到不同的版本状态;

    git log 
    查看版本库不同的版本,日志信息

    git log --pretty=oneline
    简化日志信息
    返回信息结构:
    commit的id号(版本号) commit时阐释

    git reflog
    比上两种命令多要好用,同样是返回版本库不同版本的信息
    返回信息结构:
    简化版本号 HEAD@{编号} 操作类型:该操作时的信息

    注意:操作类型,一般是commit,reset(退回到某个版本库的命令)



    注意:HEAD和简化版本号相同,都是版本号,形式不同而已

    注意:此命令和git log 不同,在退回到某个版本时,
    git log 不会显示全部的日志信息,显示到当前版本位置;

    git reflog 会记录每一次

    回退到某个版本
    git reset --hard 版本号
    或者
    git reset --hard HEAD@{编号} ------- 通过git reflog 查看

    版本号通过git log;git reflog;查看


    注意:理解关键字HEAD,相当于指针,指向不同的版本库所在的存储位置

    版本如何方便的回退到最新版本位置?
    1.第一步,通过git reflog查看
    2.第二步,通过git reset --hard 版本号 回到指定版本

    如何查看当前所在的版本?
    1. 第一种方法:
    通过 git log 方式,只会显示从最初的版本到目前版本的日志

    2. 第二种方法:
    git reset --hard HEAD
    HEAD是指针,表示当前所处的版本
    ××××××××××××××××××××××××××××××××××

    修改撤销

    1. 撤销暂存区中的修改
    git reset HEAD 文件名
    这是暂存区没有了该文件,该文件回到了工作区

    注意:git reset不仅可以版本回退,还可以撤销暂存区中的修改
    HEAD表示最新版本

    2. git checkout --文件名
    2.1 如果文件在工作区,即将修改撤销,回到最新版本状态
    这种情况,直接打开文件修改即可
    2.2 文件在暂存区,没什么变化

    注意:
    即使文件在暂存区也不一定撤销所有的修改,这是可以在工作区再次打开该文件,
    修改后,再次add,即可;这是暂存区的该文件是刚刚更改的文件

    **********************************
    删除文件

    *********************************
    远程仓库

    在服务器中建立仓库,各个客户端可以clone仓库到本地;
    git本地仓库 与 github仓库 传输需要ssh加密

    本地仓库与github仓库交互,为何要配置ssh文件?
    客户端与github之间的通信遵循ssh协议,所以需要在客户端,服务器端设置
    1.在git本地设置ssh秘钥
    2.在github中将git本地设置的秘钥填写在相应的设置中
    这样,github就知道在与哪个用户交互

    别人可以克隆你的仓库,但是无法提交修改等;即只读不写

    在本地设置git的ssh文件
    1.设置ssh key
    在home/xubiao目录下查看是否存在.ssh文件
    【.ssh表示该文件是隐藏的,在显示时,需要使用ls -a】

    在.ssh目录下是否有id_rsa id_rsa.pub文件

    如果不存在,创建这两个文件,这是存储秘钥的文件
    创建语句: ssh-keygen -t rsa -C 邮箱

    一直下一步就可以,不需要输入任何东西;
    命令语句在.ssh目录下输入,这是在.ssh目录下生成以上两个文件

    2. 将id_rsa.pub中的秘钥填入github中
    在github中填写秘钥后,要验证github密码

    连接远程仓库?
    前提:必须配置ssh

    1.远程仓库存在,直接在客户端克隆
    git clone 远程仓库地址

    此时客户端克隆的仓库已经和远程仓库建立了联系;
    提交时,可以直接执行以下语句:
    git push -u origin master
    -u表示首次提交时,客户端master分支与远程master分支合并


    2.在本地创建仓库,服务器中是个空仓库
    首先,本地仓库,远程仓库建立联系
    git remote add origin 远程仓库地址

    其次,提交
    git push -u origin master

    在于远程仓库建立联系时,有两种方式:
    1.通过ssh协议的地址 2.通过https协议的地址
    ssh协议方式在提及时不需要输入github的用户名/密码

    注意:
    不管本地仓库是克隆远程仓库,还是新建本地仓库然后和远程仓库建立连接,
    只要是通过ssh协议,在提交时,就不需要输入github的账号/密码
    通过https协议,需要输入github的账号/密码

    与远程仓库交互有两中协议:https,ssh
    建议使用ssh,速度快

  • 相关阅读:
    NSDate 与NSString的互相转换
    NSArray 基础
    IOS 使用自定义字体
    页面跳转添加动画
    Builder 模式
    树的子结构
    Singleton 模式
    合并两个排序的链表(递归算法)
    合并两个排序的链表(非递归)
    反转链表
  • 原文地址:https://www.cnblogs.com/RocketV2/p/5379917.html
Copyright © 2020-2023  润新知