• 版本控制之git


    1.Git的介绍

    Git 是一个开源的分布式版本控制软件,用以有效、高速的处理从很小到非常大的项目版本管理。 Git 最初是由Linus Torvalds设计开发的,用于管理Linux内核开发。Git 是根据GNU通用公共许可证版本2的条款分发的自由/免费软件,安装参见: http://git-scm.com/

    GitHub是一个基于Git的远程文件托管平台(同GitCafe、BitBucket和GitLab等)。

    Git本身完全可以做到版本控制,但其所有内容以及版本记录只能保存在本机,如果想要将文件内容以及版本记录同时保存在远程,则需要结合GitHub来使用。使用场景:

    无GitHub:在本地 .git 文件夹内维护历时文件
    有GitHub:在本地 .git 文件夹内维护历时文件,同时也将历时文件托管在远程仓库
    其他:

    ​ 集中式:远程服务器保存所有版本,用户客户端有某个版本
    ​ 分布式:远程服务器保存所有版本,用户客户端有所有版本

    2.Git的安装

    windows目前Git的版本是2.36

    3.git的基本命令和本地仓库的一些命令

    1.git分为四个区域
    工作区:当前编辑的区域
    缓存区:git.add之后的区域
    本地仓库:commit之后的区域
    远程仓库:远程区域,比如码云,github
    
    2.git初始化命令    git init
    
    3.查看git状态命令  git status
    
    4.将文件从工作区放到缓存区:  git add 文件名 (对一个文件操作)
                                            git add . (将工作区所有的文件添加到缓存区)
    
    5.将缓存区的文件提交给本地仓库  git commit -m "本次操作的注释"
    
    6.设置用户的邮箱  git config --global user.email 'xxx@qq.com'
    
    7.设置用户的用户名  git config --global user.name "xxx"
    
    8.删除用户的邮箱  git config --global --unset user.email
    
    9.删除用户的用户名 it config --global --unset user.name
    
    10.查看当前版本之前提交的记录   git log
    
    11.查看所有的提交记录  git reflog
    
    12.回退到之前某次提交的地方(慎用)  git log 查到某次记录的hash值
                                                    git reset --hard hash值
    
    13.将指定文件回退到最近一次commit的地方,只对工作区做修改,缓存区不变(慎用)
        
                   git checkout 文件名
    
    14.将指定文件从缓存去拉取到工作区,不会覆盖原来的文件  git reset HEAD 文件名
    
    15.对比缓存区和工作区的区别  git diff
    
    16.对比缓存区和本地仓库的区别   git diff --cached
    

    4.git的远程仓库的一些命令

    1.添加git别名  git remote add origin https://url.git
    
    2.新文件夹中将远程仓库下载到本地  git clone https://url.git
    
    3.旧文件爱夹江远程仓库文件下载到本地  git pull origin master
    
    4.将本地文件推到远程仓库  git push origin master
    
    

    5.git的快照

    1.创建快照  git stash
    
    2.取出快照并删除快照记录 git stash pop
    
    3.查看快照记录 git stash list
    
    4.删除快照 git stash drop 快照名称
    
    5.取出快照不删除快照记录 git stash apply 快照名称
    

    6.git的分支

    #一般公司的分支会有master用来放线上的代码,dev自己的分支,还有一个review分支,review分支是用来看代码是否规范,逻辑是否合理,一般由组长看
    
    1.查看分支 :git branch
    
    2.创建分支 :git branch 分支名称
    
    3.切换分支 : git checkout 分支名称
    
    4.创建并切换分支 : git branch -b 分支名称
    
    5.删除分支 : git branch -d 分支名称
    
    6.合并分支 : git merge 分支名称
        例如:将bug分支合并到master分支上,首先切换到master分支,然后执行git merge bug,就合并完成
    
    7.将本地分支推送到远程仓库 : git push origin 分支名称
    
    8.创建dev分支并以线上的为蓝本 : git branch 分支名称 origin/分支名称
                                例如:git branch dev origin/dev
                这样创建后执行git pull origin dev 就能将Dev分支下载下来
    
    9.创建并切换分支   git checkout -b 分支名称 origin/分支名称
    

    7.git的tag

    一个程序在实现一个里程碑的突破后会添加一个tag的版本
    
    1.查看tag : git tag
    
    2.以当前位置创建版本 : git tag -a 版本名称  -m "注释信息"
          例如:git tag -a v1.0 -m "v1.0上线"
    
    3.以某次提交为蓝本创建tag: git tag -a 版本名称 -m "注释信息" 某次commit提交的hash值
        例如: git tag -a v1.0 -m "v1.0上线" hash值(hash值通过git reflog来查看)
    
    4.删除tag : git tag -d tag名称
    
    5.将tag上传远程仓库 : git push origin --tags   这是上传所有tag
    
    6.删除远程仓库的tag: git push origin 空格 :refs/tags/tag名称   
    
    7.将远程仓库的tag拉取下来 : git pull
    

    8.git的隐藏文件

    参考:https://blog.51cto.com/wangfeng7399/2352669

     
    创建隐藏文件: vi .gitignore
        在创建的隐藏文件gitignore中,将需要隐藏的文件名(比如d.py)写进去,就可以将文件隐藏
    

      

     

      

     

      

  • 相关阅读:
    the-backdoor-factory安装
    python 实验普通IO和多路复用IO
    vue学习随笔(一)
    CentOS最小安装
    CentOS7安装ELK实践(二)
    CentOS7安装ELK实践(一)
    【转】mysql 多主多从配置,自增id解决方案
    Istio组件解析
    Kubernetes NetworkPolicy 插件支持
    在Kubernetes集群上安装Metrics Server
  • 原文地址:https://www.cnblogs.com/l1222514/p/16242947.html
Copyright © 2020-2023  润新知