• 【工具】Git-码农“吃饭的碗”要拿好


    汝之观览,吾之幸也!本文主要讲解的是Git的轻巧使用(创建、下载、上传、更新、回退),我们平常都是通过idea自带的git工具,或者其他工具来拉取提交代码,这里主要用命令行的方式拉取代码,并配合不同场景进行整理命令执行步骤。

    一、概念

    是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。
    在这里插入图片描述

    二、安装部署

    Git官网地址
    可直接在官网上进行下载安装包进行解压安装
    Git的文档说明
    可参考文档中的命令说明,查看每个命令的基本使用方式
    在这里插入图片描述

    三、常用命令

    1、git config

    配置用户名与邮箱

    git config --global user.name 'your name'
    git config --global user.email 'your email'
    
    • 1
    • 2
    2、git version

    查看git的版本信息

    git version
    
    • 1
    3、git init

    初始化git本地仓库

    git init
    
    • 1
    4、git clone

    克隆远程分支

    git clone 代码GitHub/GitLab/Gitee地址
    
    • 1
    5、git add

    将修改过的文件和新文件添加到暂存区

    git add *
    
    • 1
    6、git commit

    提交修改的文件到本地仓库

    git commit -m "提交注释"
    
    • 1
    7、git status

    在git add和git commit之间查看状态

    git status
    
    • 1
    8、git branch

    查看git全部分支

    git branch -a
    
    • 1

    删除git分支

    git branch -d 分支名
    
    • 1
    9、git checkout

    切换到其他分支

    git checkout 分支名
    
    • 1

    从当前分支拆出一个本地分支

    git checkout -b 分支名
    
    • 1
    10、git remote

    将本地分支与远程分支关联上

    git remote add origin 远程分支git地址
    
    • 1
    11、git pull

    拉取远程分支代码到本地

    git pull origin 分支名
    git pull
    
    • 1
    • 2
    12、git push

    推送本地代码到远程

    git push -u origin 分支名
    
    • 1
    13、git fetch

    查看全部的远程分支

    git fetch
    
    • 1
    14、git log

    获取git提交的日志

    git log --all
    # 显示log的摘要
    git shortlog
    
    • 1
    • 2
    • 3
    15、git merge

    合并分支代码到本地

    git merge 分支名
    
    • 1
    16、git tag

    将分支进行打标签,打标签后的分支不可更改代码,常用于部署生产使用

    git tag -a 标签名称
    
    • 1
    17、git diff

    比较两个分支

    git diff 源分支 目标分支
    
    • 1
    18、git help

    帮助命令,会列出全部命令的使用方式

    git help
    
    • 1

    参考文章:最常用的 35 个 Git 命令

    四、其他场景下的命令集合

    1、更改上次提交的注释

    1、更改上次的注释

    git commit --amend -m "新的修改提交信息"
    
    • 1
    2、更改远程上次提交的注释

    1、查看提交日志,获取最后一次提交的日志id

    git log
    
    • 1

    2、本地回退到上次提交的位置

    git reset --hard 80ab172a(最后一次提交的日志id)
    
    • 1

    3、远程回退(本地回退后再远程回退)

    git push origin HEAD --force
    
    • 1

    4、重新提交注释

    git commit --amend -m "新的修改提交信息"
    
    • 1

    5、提交到远程

    git push
    
    • 1
    3、切主分支为本地分支开发,本地分支上传到远程(远程没有本地分支)

    1、在本地创建本地分支

    git checkout -b develop_01
    
    • 1

    2、提交本地分支代码

    git commit -m "提交信息"
    
    • 1

    3、将本地分支提交到远程

    git push origin develop_01:develop_01
    
    • 1
    4、切主分支为本地分支开发,本地分支上传到远程(远程已有本地分支)

    1、查看远程分支

    git fetch
    git branch -a
    
    • 1
    • 2

    2、切换分支

    git checkout 1.0_maintain_plan
    
    • 1

    3、拉取远程分支

    git pull origin 1.0_maintain_plan
    
    合并其他分支到当前分支
    git merge 1.0_vms_tamplate
    
    • 1
    • 2
    • 3
    • 4

    4、提交本地分支

    git commit -m "提交信息"
    
    • 1

    5、将本地分支提交到远程

    git push origin 1.0_maintain_plan:1.0_maintain_plan
    
    • 1
    5、远程分支合并

    1、查看远程分支

    git fetch
    git branch -a
    
    • 1
    • 2

    2、切换分支

    git checkout 1.0_maintain_plan
    
    • 1

    3、拉取远程分支

    git pull origin 1.0_maintain_plan
    
    合并其他分支到远程分支
    git merge 1.0_vms_tamplate
    
    • 1
    • 2
    • 3
    • 4
    6、删除原有git新建新的git关联
    删除原有的git文件夹
    rm -rf .git
    
    初始化git
    git init
    
    新增git,提交到缓存
    git add .
    
    提交本地代码
    git commit -m “提交初始化版本”
    
    与远程关联
    git remote add origin git@gitee.com:xxx.git
    
    提交到远程
    git push origin master
    
    设置origin为默认主机,后续push后可不加参数
    git push -u origin master
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    7、git push 提交“DeployKey does not support push code” 错误

    错误原因:未在Gitee上注册公钥
    解决方案:

    在本地仓库文件夹下生成密钥
    ssh-keygen -t rsa -C git@gitee.com:xxx.git
    
    获取生成的公钥
    cat ~/.ssh/id_rsa.pub
    
    复制打印的公钥,在Gitee 设置-》安全设置-》SSH公钥设置中添加公钥
    是以“ssh-rsa” 开头
    
    再次提交本地仓库到远程
    git push origin master
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    8、git pull 拉取“fatal: refusing to merge unrelated histories” 错误

    错误原因:因为本地仓库与远程仓库有冲突
    解决方案:

    允许手动合并冲突
    
    git pull origin master --allow-unrelated-histories
    或者
    git pull --allow-unrelated-histories
    
    再手动修改冲突的文件,再次提交即可。
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    五、git工具

    sourcetree工具

  • 相关阅读:
    python面试题
    Ansible任务控制loop循环、when和block条件判断介绍演示
    如何参与开源项目 - 细说 GitHub 上的 PR 全过程
    C# 使用ExcelDataReader读取Excel文件内容
    雷达散射截面(RCS)相关概念
    安全清理C盘空间,5个基操,还你一个流畅办公体验
    spring - AnnotationConfigApplicationContext启动之reader、scanner、register逻辑整理
    行业专网对比公网,优势在哪儿?能满足什么特定要求?
    蓝牙耳机什么牌子的好用?300元内最好的蓝牙耳机推荐
    【计算机视觉 | 目标检测】arxiv 计算机视觉关于目标检测的学术速递(9 月 1 日论文合集)
  • 原文地址:https://blog.csdn.net/m0_37172770/article/details/127616857