zoukankan      html  css  js  c++  java
  • Git基本操作

    git基础操作

    基础知识

    Git分为三种状态,你的文件可能处于其中之一:已修改(modified),已暂存(staged),已提交(committed)。分别对应三个逻辑区:工作区,暂存区,仓库(数据目录)。

    操作演示

    git init test

    此命令初始化一个新本地仓库,它在工作目录下数据目录生成一个名为.git的隐藏文件夹。git会将所有的文件,目录,提交等转化为git对象,压缩存储在这个文件夹当中。
    git init 命令后面不加参数表示把当前目录变为仓库,如下表示在当前目录下创建test仓库


    git status

    查看当前git状态


    这里表示的是暂存区没有文件,可以提交到暂存区的文件有test1.txt和test2.txt

    我们要用git add来提交到暂存区(也可以理解为建立跟踪)

    git add


    git commit

    将文件由暂存区提交到仓库

    -m 参数表示提交时的备注


    可以看到尽管我们提交了test1.txt文件,但是我们还是在跟踪test1.txt文件

    这时我们再修改test1.txt文件,在使用

    git diff test1.txt


    可以看到,当我们没有修改test1.txt时,使用git diff命令时,是不会有显示的,当我们进行修改了之后,再diff就有显示,git diff表示工作区和暂存区的区别,这时侯我们还没有把工作区修改的文件提交到暂存区,自然有显示,当提交了就没有显示了

    git log

    我们使用git log查看提交到仓库区的记录


    查看下历史记录,HEAD我的理解就是指针,指到最后提交的版本,提交的越早的在最低下。


    这是同时修改个文件的git diff效果


    这是同时提交多个文件到仓库的效果,还是以最近一次提交为head指针,但是区分不出具体提交的文件名。

    git reset --hard [版本号]

    可以回退到之前一个版本,这时test1.txt的内容对应这个版本的内容

    git reflog

    当我们使用git reset进入之前的版本号后,会看不到最先开始的版本号,这时我们可以通过git reflog来进行查看。

  • 相关阅读:
    意图识别及槽填充联合模型bert
    意图识别及槽填充联合模型的改进 cnn-self-attention
    意图识别及槽填充联合模型cnn-seq2seq
    cnn-residual用于意图识别
    centos 8 上配置asp.net core 5
    WPF自定义控件
    jdk 动态代理源码分析
    在windows上构建angular项目 (下)
    在windows上构建angular项目 (上)
    "名字好难想队“团队项目
  • 原文地址:https://www.cnblogs.com/NineOne/p/13872886.html
Copyright © 2011-2022 走看看