• Git基本操作_3


    与远程仓库交互

    • 同步远程代码

      一个远程仓库有可能有多人有权限推送,所以存在远程代码比你本地仓库更新,因此在提交代码之前需要先拉取服务器代码,让本地仓库保持最新的版本记录;这样做的目的是为了防止当你提交代码之后,推送到远端出现代码冲突问题,拉取远程代码参考命令如下所示:

      git pull 
      

      在终端执行完命令之后,如果有代码更新,返回的信息如下图所示:

      image-20200329160047171

      可以看到新增了一个文件。

    • 检查改动文件

      当远端最新的代码拉下来之后,最好通过git status命令检查一下有哪些文件被改动了,参考命令如下所示:

      git status 
      

      显示的信息一般会有以下几类:

      1. Untracked: 未跟踪,一般为新增文件,此文件在文件夹中, 但并没有加入到git库, 不参与版本控制. 通过git add 状态变为Staged.
      2. Modified: 文件已修改, 仅仅是修改, 并没有进行其他的操作.
      3. deleted: 文件已删除,本地删除,服务器上还没有删除.
      4. renamed:文件名称被改变

      如果发现无意中编辑了某一个文件,但实际上并不想改变它,这里可以使用git checkout 文件名来撤销更改,参考命令如下:

      git checkout README.md
      
    • 添加文件到缓存

      可以使用下面的命令将文件添加到缓存当中:

      git add [文件名] #会将单独的文件添加到缓存当中
      git add . #会将所有文件添加到缓存当中
      
    • 提交代码

      当你将所需要提交的代码都添加到缓存区域后,接下来就可以将代码提交到本地仓库中,参考命令如下所示 :

      git commit . -m “这是备注信息”
      

      上方命令中的.是代表选择所有的文件或目录,你也可以提交指定某一个文件,将.换成相应的目录或文件名即可。

    • 推送代码

      当代码提交之后,在本地的工作就已经完成了,此时为了让其他人拉取你的代码,通常还需要将代码推送到远程仓库,这里我告诉大家最简单的方式,参考命令如下:

      git push
      

    查看修改信息

    • 工作区和暂存区

      工作区,指的是当前正在编辑的文件,还没有修改的内容通过git add命令暂存起来。

      暂存区,指的是文件修改之后并且通过git add命令临时存储到版本记录里了,但还没有正式通过git commit提交的阶段。

    • 比较工作区的变动

      对工作区的文件进行了编辑修改以后,可以通过如下命令检查修改的信息:

      git diff
      

      image-20200329165537792

      执行命令之后,绿色部分代表增加的内容,红色部分代表删除的内容。

    • 比较暂存区变动

      有些时候,可能已经通过git add命令,将某些文件从工作区添加到暂存区,但又想回过头,来看此文件刚才改动过哪些内容的场景,这个时候,如果想要看文件里面修改了什么内容,就不是再把工作区和暂存区进行对比了【此时使用git status命令只能看到文件做了改动,但并不知道改动了哪里,使用git diff命令后并不能看到任何信息】,而是需要把暂存区与版本库最近一次 commit 的内容进行比较,参考命令如下:

      git diff --cached  [文件名]
      

      image-20200329165920244

    • 与指定记录比较

      有些时候,可能需要代码和历史的某一个版本进行比较,这个时候可以先通过git log命令,找到历史提交记录的一个 hash 值。

      image-20200329170118732

    • 工作区比较

      将要比较的 hash 值复制下来,然后执行如下所示命令:

      git diff [hash值]
      

      image-20200329170307221

    • 暂存区比较

      有些时候,想把暂存区的改动和指定记录进行对比,那么在命令中加入--cached 即可,参考命令如下:

      git diff --cached [hash值]
      

      image-20200329170529791

    • 与最新版本库比较

      很多时候,只需要将未正式提交的代码(包含工作区与暂存区)与最新的 commit 记录进行比较,虽然也可以通过指定 commit 的 hash 值进行,但是却很不方便,需要先获取到 hash 值,可以使用一个简单的方法,可以通过git diff HEAD命令方式快速对比,参考命令如下:

      git diff HEAD
      

      image-20200329170917451

    • 比较两个历史记录

      有时候,可能会需要查看某一次提交记录修改了什么内容,这个时候就需要将两个历史记录进行比较;首先通过git log命令获取到需要查看的记录 hash 值,然后再找到这个记录的上一个版本的 hash 值,拼接的参考命令如下所示:

      git diff [hash值1]  [hash值2]
      

      image-20200329173959113

  • 相关阅读:
    java中引用数据类型Scanner类和Random类的使用-0509
    java中运算符的理解-0509
    MySQL-ER图
    MySQL-习题
    《大型网站技术架构:核心原理与案例分析》笔记
    rabbitmq php测试使用
    gearman管理工具GearmanManager的安装与使用
    让PHP7达到最高性能的几个Tips
    linux下查看最消耗CPU、内存的进程
    Gearman分布式任务处理系统
  • 原文地址:https://www.cnblogs.com/grubber/p/12593705.html
Copyright © 2020-2023  润新知