• Git 基本操作【本地仓库与远程仓库的推送、克隆和拉取】



    一、Git简介

    Git分布式版本控制系统(Distributed Version Control System,简称 DVCS),分为两种类型的仓库:
    本地仓库和远程仓库
    工作流程如下
    1.从远程仓库中克隆或拉取代码到本地仓库(clone/pull)
    2.从本地进行代码修改
    3.在提交前先将代码提交到暂存区
    4.提交到本地仓库。本地仓库中保存修改的各个历史版本
    5.修改完成后,需要和团队成员共享代码时,将代码push到远程仓库

    二、Git的下载安装

    官网下载地址:https://git-scm.com/download

      1. 选择开发环境,这里我以Windows为例
        在这里插入图片描述
      1. 选择对应的系统位下载
        在这里插入图片描述
      1. 安装时全部选择默认即可,安装完后进入某一个文件夹,出现如下情况即为安装成功!
        在这里插入图片描述

    三、Git常规命令

    1. 初始化本地仓库
    git init
    
    • 1
    1. 查看文件状态
    git status
    
    • 1
    1. 将文件从工作区移至暂存区
      例如:git add test.txt,表示将文件test.txt放入到暂存区中
    git add 文件名
    
    • 1
    1. 将暂存区的文件提交到本地仓库
      例如git commit -m “add test.txt”,表示将暂存区的文件都提交到本地仓库,并备注“add test.txt”
    git commit -m “备注”
    
    • 1
    1. 查看提交版本记录
    git log
    
    • 1
    1. 查看历史操作记录
    git reflog
    
    • 1
    1. 版本回退,commitID为回退的ID号,ID号可用git log指令查看
    git reset --hard commitID
    
    • 1
    1. 起别名。在本机用户(例如我的:C/用户/18100)的目录下创建文件“.bashrc”,在该文件里输入指令起别名。例如:
    alias git-log='git log --pretty=oneline --all --graph --abbrev-commit'
    
    • 1

    即将git log --pretty=oneline --all --graph --abbrev-commit起别名为git-log,该语句意为git log的优化使用。

    1. 左键双击可选中字符表示复制,按下鼠标滚轮表示粘贴。

    2. 若不想让某些文件纳入git管理,则在工作目录中创建.gitignore文件,里面输入需要忽略的文件名。例如:忽略所有.a后缀的文件,则在.gitignore中编辑“*.a

    四、新建本地仓库

      1. 新建一个文件夹作为测试使用
      1. 进入该文件夹,右键选择Git bash
      1. 在命令行中输入“git init”,初始化本地仓库
      1. 在命令行中输入“touch test.txt”,在仓库中创建一个文件,此时该文件处于工作区状态(一个文件想存储到本地仓库需要经过2个变换:工作区–>暂存区、暂存区–>本地仓库)
      1. 将文件放入暂存区中。输入命令“git add test.txt”,该命令表示将文件test.txt放入到暂存区中。
      1. 提交到本地仓库。输入指令“git commit -m "add test.txt"”,该命令表示将暂存区的文件都提交到本地仓库,并备注“add test.txt”

    五、本地分支操作

      1. 查看本地分支
    git branch
    
    • 1
      1. 创建本地分支
    git branch 分支名
    
    • 1
      1. 切换分支
    git checkout 分支名
    
    • 1
      1. 直接切换到一个不存在的分支(创建并切换)
    git checkout -b 分支名
    
    • 1
      1. 合并分支,将“分支名”合并到当前的分支上
    git merge 分支名
    
    • 1
      1. 删除分支,需要做各种检查(推荐使用)
    git branch -d 分支名
    
    • 1
      1. 强制删除分支,无需任何检查
    git branch -D 分支名
    
    • 1

    六、Git远程仓库

    这里我以Gitee为例,建立远程仓库,Github、Gitlab等同理。

      1. 注册登录Gitee账号
      1. 在Gitee上创建仓库
        在这里插入图片描述
      1. 回到本地仓库Git bash上,输入命令“ssh-keygen -t rsa”,然后一直回车即可
      1. 获取公钥,继续输入命令“cat ~/.ssh/id_rsa.pub”,复制如下公钥
        在这里插入图片描述
      1. 回到Gitee,打开设置,进入SSH公钥,在公钥编辑框内输入粘贴到的公钥
        在这里插入图片描述
      1. 验证公钥是否配置成功。回到Git bash,输入“ssh -T git@gitee.com
      1. 到Gitee中复制仓库的SSH地址
        在这里插入图片描述
      1. 添加远程仓库,地址为上面复制的SSH地址,起别名为“origin”到git bash中输入“git remote add origin SSH地址
      1. 验证是否添加成功,查看远程仓库,输入指令“git remote
      1. 将本地仓库推送到远程仓库,输入指令“git push 远端名称 本地分支名:远端分支名”,例如git push origin master:master

    以上推送到远程仓库的步骤可用改用“git push --set-upstream origin master”,意为当前分支与远端的master分支关联起来,并同时完成推送,即在以后的推送中可以直接使用“git push”完成推送。
    Tips:git branch -vv:可查看分支的关联关系。

    七、远程仓库克隆、抓取和拉取

    • 1. 克隆
      在计算机某文件夹中打开git bash,输入“git clone 仓库SSH地址 本地目录”,意为对远程仓库进行复制,存放到“文件夹”中,其中“本地目录”可省略,系统会自动生成一个目录。
    • 2. 抓取
      抓取命令“git fetch 远端名 远端分支”,即将远端仓库里的某个分支的更新都抓取到本地,不会合并,如果不指定远端名和分支名,则抓取所有分支。
    • 3. 拉取
      拉取命令“git pull 远端名 远端分支”,即将远端仓库的修改拉取到本地并会自动进行合并,等同于fetch+merge,如果不指定远端名和分支名,则拉取所有分支。

    Tips:git merge origin/master”为将远程仓库的master分支合并到本地分支

    八、总结

    在这里插入图片描述
    本地仓库:是在开发人员自己电脑上的Git仓库,存放我们的代码(.git 隐藏文件夹就是我们的本地仓库)
    远程仓库:是在远程服务器上的Git仓库,存放代码(可以是github.com或者gitee.com 上的仓库,或者自己该公司的服务器)
    工作区: 我们自己写代码(文档)的地方
    暂存区: 在 本地仓库中的一个特殊的文件(index) 叫做暂存区,临时存储我们即将要提交的文件

    Clone:克隆,就是将远程仓库复制到本地仓库
    Push:推送,就是将本地仓库代码上传到远程仓库
    Pull:拉取,就是将远程仓库代码下载到本地仓库,并将代码 克隆到本地工作区

    九、学习交流

    学习交流 联系下方wx即可👇👇👇
    在这里插入图片描述

  • 相关阅读:
    vue + axios + mock
    MySQL的多表查询(1)
    【windows】自动开机 + 免登陆 + 自动运行bat脚本 + 远程免登陆
    一文搞懂drag&drop浏览器拖放功能的实现
    【LeetCode刷题日志】160.相交链表
    看完腾讯大牛的“JVM垃圾回收算法及收集器”反正我是收藏了
    【LeetCode:108. 将有序数组转换为二叉搜索树 + 二叉树+递归】
    Codeforces Round 901 (Div. 1) B. Jellyfish and Math(思维题/bfs)
    访问学者美国访学必须知道十大注意事项
    cat()函数和print()函数的区别
  • 原文地址:https://blog.csdn.net/Dustinthewine/article/details/132838663