IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> Git指南(Git的安装与常用命令) -> 正文阅读

[开发工具]Git指南(Git的安装与常用命令)

简介

Git:分布式版本控制工具

优点:

  1. 速度快
  2. 设计简单
  3. 对非线性开发模式强力支持
  4. 完全分布式

Git的安装与常用命令

由于本教程的示范都以Git Bash中的操作为例,所以需要先了解一些Linux常用的命令

ls/ll ---查看当前目录
cat 文件名 ---查看文件内容
touch 文件名 ---创建文件
vi 文件名 ---编辑(文本)文件
clear ---清空控制台内容

Git下载

下载地址:点击打开

打开安装程序后依次点击 Install -> Finish

准备工作

基本配置

  1. 在任意文件夹或桌面右键选择Git Bash 或搜索Git Bash 打开

在这里插入图片描述

  1. 设置用户信息(每次Git提交都要用)

    ####将以下内容稍加修改粘贴至Git Bash中####
    git config --global user.name “你的用户名”
    git config --global user.email "你的邮箱地址"
    
  2. 查看是否配置成功

    git config --global user.name
    git config --global user.email
    

解决中文乱码问题(新版一般不出现,选做)

  1. 打开 Git Bash 输入以下内容

    git config --global core.quotepath false
    
  2. ${git_home}/etc/bash.bashrc 文件末尾加入以下两行(${git_home}Git的安装目录,如图)

    export LANG="zh_CN.UTF-8"
    export LC_ALL="zh_CN.UTF-8"
    

在这里插入图片描述

获取本地仓库

要使用Git对代码进行版本控制,首先需要获得本地仓库

  1. 在电脑任意位置创建空文件夹(MyRepository为例)
  2. 进入这个文件夹,右键打开Git Bash
  3. 执行命令git init
  4. 成功后可以在文件夹内看到.git隐藏文件夹(需要设置显示隐藏文件夹)

在这里插入图片描述

常用命令

Git工作目录(本地仓库文件夹)下对于文件的修改(增加、删除、更新)会存在几个状态,这些修改的状态会随着我们执行Git的命令而发生变化

1.查看修改状态(status)

  • 作用:查看被git管理的文件的状态(暂存区、工作区)
  • 命令: git status

2.添加工作区到暂存区

  • 作用:添加工作区一个或多个文件的新增或修改到暂存区
  • 命令:
    • git add 单个文件名/通配符
    • 将所有修改文件加入暂存区:git add .

3.提交暂存区文件到本地仓库

  • 作用:提交暂存区文件到本地仓库的当前分支
  • 命令:git commit -m '注释内容/本次提交的描述'

4.查看提交日志

  • 作用:查看提交记录

  • 命令:git log [option]

    • 其中,[option]可以不写,也可以依次追加以下内容以增强功能(例:git log --all --pretty=oneline --abbrev-commit --graph

    • --all   显示所有分支
      --pretty=oneline   将提交信息显示为一行
      --abbrev-commit   使得输出的commitId更简短
      --graph   以图的形式显示
      

5.版本切换/版本回退

  • 作用:版本切换
  • 命令:git reset commitID --hard
    • 需要将commitId替换为git log后显示的第一段内容
  • 查看已经删除的记录
    • 命令:git reflog

6.添加文件至忽略列表

一般我们总会有些文件无需纳入Git的管理,也不希望它们总出现在未跟踪文件列表。通常都是些自动生成的文件,比如日志文件,或者编译过程中创建的临时文件等。在这种情况下,我们可以在工作目录中创建一个名为.gitignore的文件(文件名称固定),列出要忽略的文件模式。下面是一个示例:

# 忽略所有以.a为后缀的文件
*.a
# 在忽略.a文件后仍想跟踪某一特定.a文件(lib.a)
!lib.a
# 只忽略当前目录下的TODO文件
/TODO
# 忽略build子目录下的所有文件
build/
# 忽略doc一级子目录中的所有.txt文件
doc/*.txt
# 忽略doc子目录中的所有.txt文件
doc/**/*.txt

常用命令演示

1.在仓库文件夹内新增/修改文件

在这里插入图片描述

2.查看状态(可忽略)

命令:git status

在这里插入图片描述

发现有一个名为code1.txt的文件处在工作区

3.将新增/修改的文件加入工作区

命令:git add .

4.查看状态(可忽略)

命令:git status

在这里插入图片描述

发现有一个名为code1.txt的文件处在缓存区

5.将修改的文件提交至本地仓库

命令:git commit -m '新增文件code1.txt'
在这里插入图片描述

6.查看日志/提交记录

命令:git log

在这里插入图片描述

7.以更加清晰的方式查看日志/提交记录

命令:git log --all --pretty=oneline --abbrev-commit --graph

在这里插入图片描述

8.修改code1.txt文件内容

在这里插入图片描述

9.重新进行addcommit操作

命令:

  • git add .
  • git commit -m '修改code1.txt'

10.查看提交记录

在这里插入图片描述

11.回退到上一版本(3fe20d3)

命令:git reset 3fe20d3 --hard

在这里插入图片描述

分支

几乎所有的版本控制系统都以某种形式支持分支。使用分支意味着你可以把你的工作从开发主线上分离开来进行重大的Bug修改、开发新的功能,以免影响开发主线

常用命令

查看本地分支

命令:git branch

创建本地分支

命令:git branch 分支名

切换分支

命令 :git checkout 分支名

创建并切换分支

命令 :git checkout -b 分支名

合并分支

  • 作用:把某一分支的内容合并到当前分支

  • 命令:git merge 分支名

删除分支

不能删除当前所在的分支,只能删除其他分支

命令:

  • git branch -d 分支名 --检查并删除分支
  • git branch -D 分支名 --不检查,强制删除分支

解决冲突

当两个分支上对文件的修改可能会存在冲突,例如同时修改了同一个文件的同一行,这时就需要手动解决冲突,解决冲突步骤如下:

  1. 手动处理文件中冲突的地方
  2. 将解决完冲突的文件加入暂存区(add)
  3. 提交到仓库(commit)

开发中分支使用原则与流程

几乎所有的版本控制系统都以某种形式支持分支使用分支意味着你可以把你的工作从开发主线上分离开来进行重大的Bug修改、开发新的功能,以免影响开发主线

在开发中,一般有如下分支使用原则与流程:

  • master(生产)分支线上分支,主分支,中小规模项目作为线上运行的应用对应的分支

  • develop(开发)分支是从 master创建的分支,一般作为开发部门的主要开发分支,如果没有其他并行开发不同期上线要求,都可以在此版本进行开发,阶段开发完成后,需要是合并到master分支,准备上线

  • feature/xxxx分支是从develop创建的分支,一般是同期并行开发,但不同期上线时创建的分支,分支上的研发任务完成后合并到develop分支

  • hotfix/xxxx分支,从master派生的分支,一般作为线上bug修复使用,修复完成后需要合并到mastertestdevelop分支

在这里插入图片描述

常用命令演示

查看当前分支

命令:git branch

在这里插入图片描述

目前只有master分支

创建/切换本地分支

命令 :git checkout -b 分支名

在这里插入图片描述

创建并切换至dev分支

查看当前分支

命令:git branch

在这里插入图片描述

合并分支

  1. dev分支新建code2.txt文件

在这里插入图片描述

  1. 依次执行git add .,git commit -m '新增文件code2.txt'

在这里插入图片描述

  1. 切换至master分支:git checkout master

  2. 合并dev分支至master分支:git merge dev

  3. 此时master分支内就有了dev分支中创建的文件

在这里插入图片描述

查看整个过程

命令:git log --all --pretty=oneline --abbrev-commit --graph

删除分支

命令:git branch -d dev

查看分支

命令:git branch
在这里插入图片描述

dev分支已被删除

远程仓库

Git中存在两种类型的仓库,即本地仓库和远程仓库

添加远程仓库

远程仓库以Gitee(码云)提供的托管服务为例

  1. 注册码云

    点击打开

  2. 点击”新建仓库“

  3. 创建Git_Test仓库

  1. 配置SSH公钥

    Git Bash中输入命令ssh-keygen -t rsa生成公钥,中间过程一路点回车

在这里插入图片描述

  1. Git Bash中输入命令cat ~/.ssh/id_rsa.pub查看公钥

在这里插入图片描述

  1. 将红框部分的公钥粘贴至Gitee-设置-安全设置-SSH公钥

在这里插入图片描述

  1. 验证是否配置成功

    Git Bash中输入命令:ssh -T git@gitee.com ,首次执行需要输入yes确认

在这里插入图片描述

绑定远程仓库

  1. Gitee找到自己的仓房,复制SSH地址

在这里插入图片描述

  1. Git Bash中输入命令git remote add <远端名称> <仓库路径>
    • 远端名称:给这个远程仓库起的名字
    • 仓库路径:复制的SSH地址

在这里插入图片描述

查看远程仓库

Git Bash中输入命令git remote

在这里插入图片描述

推送到远程仓库

完整命令:git push [-f] [--set-upstream] [远端名称 [本地分支名] [:远端分支名] ]

  • 如果远程分支名和本地分支名称相同,则可以只写本地分支
    • git push test master
    • -f表示强制覆盖
    • --set-upstream推送到远端的同时并且建立起和远端分支的关联关系
      • git push --set-upstream test master
    • 如果当前分支已经和远端分支关联,则可以省略分支名和远端名
      • git push

在这里插入图片描述

此时刷新Gitee,就能看到推送的内容

在这里插入图片描述

从远程仓库克隆

如果已经有一个远端仓库,我们可以直接clone到本地

命令:git clone <仓库路径> [本地目录]

  • 本地目录可以省略,会自动生成一个目录(在哪个文件夹打开的Git Bash就在哪生成)

在这里插入图片描述

在这里插入图片描述

从远程仓库中抓取和拉取

远程分支和本地的分支一样,我们可以进行merge操作,只是需要先把远端仓库里的更新都下载到本地,再进行操作。

  • 抓取命令:git fetch [remote name] [branch name]

    • 抓取指令就是将仓库里的更新都抓取到本地,不会进行合并

    • 如果不指定远端名称和分支名,则抓取所有分支

  • 拉取命令:git pull [remote name] [branch name]

    • 拉取指令就是将远端仓库的修改拉到本地并自动进行合并,等同于fetch+merge

    • 如果不指定远端名称和分支名,则抓取所有并更新当前分支

解决合并冲突

在一段时间,A、B用户修改了同一个文件,且修改了同一行位置的代码,此时会发生合并冲突。A用户在本地修改代码后优先推送到远程仓库,此时B用户在本地修订代码,提交到本地仓库后,也需要推送到远程仓库,此时B用户晚于A用户,故需要先拉取远程仓库的提交,经过合并后才能推送到远端分支(拉取后的操作和本地解决冲突相同)

Idea中使用Git

Idea中配置Git

安装好IntelliJ IDEA后,如果Git安装在默认路径下,那么idea会自动找到git的位置,如果更改了Git的安装位置则需要手动配置下Git的路径

Ctrl+Alt+s打开设置窗口,找到Version Control(版本控制)下的git选项:

在这里插入图片描述

在最上方选择Git可执行文件的路径,之后点击测试,如果出现Git的版本,就表示配置成功

Idea中操作Git

场景:本地已经有一个项目,但是并不是git项目,我们需要将这个放到码云的仓库里,和其他开发人员继续一起协作开发

新建远程仓库

操作见上:远程仓库-添加远程仓库

初始化本地仓库

选择某一个项目打开后,点击版本控制-创建Git仓库,选择本项目

在这里插入图片描述

设置远程仓库

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

点击确定后会让你输入Gitee的用户名和密码以确认身份

在这里插入图片描述

提交到本地仓库

在这里插入图片描述

在这里插入图片描述

推送到远程仓库

Idea的控制台中输入git pull origin master --allow-unrelated-histories,否则可能会推送失败

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

克隆远程仓库到本地

在这里插入图片描述

创建分支

在这里插入图片描述

切换分支

在这里插入图片描述

注意事项

  1. 切换分支前先提交本地的修改
  2. 代码及时提交,提交过了就不会丢
  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-10-31 12:20:15  更:2022-10-31 12:23:11 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/17 11:33:21-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码