Git学习

什么是Git

Git是一个分布式版本控制工具,主要用于管理开发过程中的源代码文件(Java类、xml文件、html页面等)

在软件开发过程中被广泛使用

image-20231011160617447

应用

  • 代码回溯

  • 版本切换

  • 多人协作

  • 远程备份

Git概述

Git简介

Git是一个分布式版本控制工具,通常用来对软件开发过程中的源代码文件进行管理。通过Git仓库存储和管理这些文件,Git仓库分为两种:

  • 本地仓库:开发人员自己电脑上的Git仓库

  • 远程仓库:远程服务器上的Git仓库

commit:提交,将本地文件和版本信息保存到本地数据库

push:推送,将本地仓库文件和版本信息上传到远程仓库

pull:拉取,将远程仓库文件和版本信息下载到本地仓库

Git下载与安装

下载地址:Git - Downloads

image-20231011162054130

下载完成后得到安装文件:

image-20231011162246183

安装完成后在任意目录点击鼠标右键,如果能看到如下菜单则表示安装完成:

image-20231011162532792

  • Git GUI Here:打开Git图形界面

  • Git Bash Here:打开Git命令行

Git代码托管服务

常用的Git代码托管服务

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

我们可以借助互联网上提供的一些代码托管服务来实现搭建Git远程仓库

其中比较常用的有GitHub、码云、GitLab等

  • GitHub(地址:GitHub),是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名GitHub

  • 码云(地址:码云),是国内的一个代码托管平台,由于服务器在国内,所以相比于GitHub,码云速度会更快

  • GitLab(地址:GitLab),是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务

  • BitBucket(地址:BitBucket),是一家源代码托管网站,采用Mercurial和Git作为分布式版本控制系统,同时提供商业计划和免费服务

使用码云代码托管服务

使用码云的操作流程如下:

  1. 注册码云账号

  2. 登录码云

  3. 创建远程仓库

  4. 邀请其他用户成为仓库成员

使用码云代码托管服务-注册码云账号

注册网址:码云

image-20231011164228744

使用码云代码托管服务-创建远程仓库

创建完成后可查看仓库信息:

image-20231011164743016

注意:每个Git远程仓库创建都会对应一个网络地址,点击【克隆/下载】按钮,在弹出窗口点击【复制】按钮获得网络地址

使用码云代码托管服务-邀请其他用户称为仓库成员

前面已经在码云上创建了自己的远程仓库,目前仓库成员只有自己一个人(身份为管理员),在企业实际开发中,一个项目往往由多个人共同开发完成的,为了使多个参与者都有权限操作远程仓库,就需要邀请其他项目参与者成为当前仓库的成员

image-20231011165344429

Git全局设置

当安装Git后首先要做的事情是设置用户名和email地址。这是非常重要的,因为每次Git提交都会使用该用户信息

在Git命令行中执行下面命令:

  • 设置用户信息

git config --global user.name "userName"
git config --global user.email "userEmail"
  • 查看配置信息

git config --list

注意:上面设置的user.name和user.email并不是我们在注册码云账号时使用的用户名和邮箱,此处可以任意设置

获取Git仓库

要使用Git对我们的代码进行版本控制,首先要获取Git仓库

获取Git仓库通常由两种形式:

  • 在本地初始化一个Git仓库(不常用)

  • 从远程仓库克隆(常用)

获取Git仓库-在本地初始化Git仓库

执行步骤如下:

  1. 在任意目录下创建一个空的目录作为我们本地的Git仓库

  2. 进入这个目录中右键进入Git bash窗口

  3. 执行命令git init

如果在当前目录下看到.git文件夹(此文件为隐藏文件夹)则说明Git仓库创建成功

image-20231011171544016

获取Git仓库-从远程仓库克隆

可以通过Git提供的命令从远程仓库进行克隆,将远程仓库克隆到本地

命令形式:git clone 【远程Git仓库地址】

image-20231011183857613

Git常用命令

工作区、暂存区、版本库 概念

版本库:前面看到的.git隐藏文件夹就是版本库,版本库中存储了很多配置信息、日志信息和文件版本信息等

工作区:包含.git文件夹的目录就是工作区,也成为工作目录,主要用于存储开发的代码

暂存区:.git文件夹中有许多文件,其中有一个index文件就是暂存区,也可以叫做stage。暂存区是一个临时保存修改文件的地方

image-20231011184430638

Git工作区中文件的状态

Git工作区中的文件存在两种状态:

  • untracked未跟踪(未被纳入版本控制)

  • tracked 已跟踪 (被纳入版本控制)

  1. Unmodified 未修改状态

  2. Modified 已修改状态

  3. Staged 已暂存状态

注意:这些文件的状态会随着我们执行的Git命令发生变化

本地仓库操作

本地仓库常用命令如下:

  • git status 查看文件状态

  • git add 将文件的修改加入暂存区

  • git reset 将暂存区的文件取消暂存或者是切换到指定版本

  • git commit 将暂存区的文件修改提交到版本库

  • git log 查看日志

image-20231011185925471

本地仓库操作-查看文件状态

git status 查看文件状态

image-20231011190223997

本地仓库操作-将文件的修改加入暂存区

git add 将文件的修改加入暂存区

image-20231011190436023

本地仓库操作-取消暂存或者切换到指定版本

git reset 将暂存区的文件取消暂存或者是切换到指定版本

image-20231011190623377

image-20231011190735456

本地仓库操作-提交

git commit 将暂存区的文件修改提交到版本库

image-20231011190918179

远程仓库操作

前面执行的命令操作都是针对的本地仓库,关于远程仓库的一些操作,具体包括:

  • git remote 查看远程仓库

  • git remote add 添加远程仓库

  • git clone 从远程仓库克隆

  • git pull 从远程仓库拉取

  • git push 推送到远程仓库

远程仓库操作-查看远程仓库

如果想查看已经配置的远程仓库服务器,可以运行git remote命令,它会列出每一个远程服务器的简写

如果已经克隆了远程仓库,那么应该最少能看见origin,这是Git克隆的仓库服务器的默认名字

image-20231012142056160

远程仓库操作-添加远程仓库

添加远程仓库,运行git remote add <shortname> <url>添加一个新的远程Git仓库,同时指定一个可以引用的简写

image-20231012142630206

远程仓库操作-克隆远程仓库到本地

如果你想获取一份已经存在的Git远程仓库的拷贝,这时就要用到git clone命令。

Git克隆的是该Git仓库服务器上的几乎所有数据(包括日志信息、历史记录等),而不是复制工作所需要的文件

克隆仓库的命令格式是git clone [url]

image-20231012143136573

远程仓库操作-推送至远程仓库

将本地仓库的信息推送到远程仓库,可使用的命令git push [remote-name] [branch-name]

image-20231012143751896

在使用git push命令将本地文件推送至码云远程仓库时,需要进行身份认证,认证通过才可以推送,如下:

image-20231012144111748

远程仓库操作-从远程仓库拉取

git pull命令的作用是从远程仓库获取最新版本并和到本地仓库,命令格式:git pull [short-name] [branch-name]

image-20231012144447797

注意:如果当前本地仓库不是从远程仓库克隆,而是本地创建的仓库,并且仓库中存在文件,此时从远程仓库来去文件的时候会报错

(fatal:refusing to merge unrelated histories)

解决此问题可以在git pull命令后加入参数 --allow-unrelated-histories

分支操作

分支是Git使用过程中非常重要的概念。使用分支意味着你可以把你的工作从开发主线上分离开来,以免影响主线开发。

同一个仓库可以有多个分支,各个分支相互独立、互不干扰

通过git init命令创建本地仓库时默认会创建一个master分支

关于分支的相关命令,具体如下:

  • gti branch 查看分支

  • git branch [name] 创建分支

  • git checkout [name] 切换分支

  • git push [short-name] [name] 推送至远程仓库分支

  • git merge [name] 合并分支

分支操作-查看分支

git branch 列出所有本地分支

git branch -r 列出所有远程分支

git branch -a 列出所有本地分支和远程分支

image-20231012150751383

分支操作-创建分支

创建分支命令格式: git branch [name]

image-20231012151010366

分支操作-切换分支

切换分支命令格式:git checkout [name]

image-20231012151216283

分支操作-推送至远程仓库分支

推送至远程仓库分支命令格式:git push [short-name] [name]

image-20231012151534176

image-20231012151621119

分支操作-合并分支

合并分支命令格式:git merge [name]

image-20231012152523777

标签操作

Git中的标签,指的是某个分支某个特定时间点的状态。通过标签,可以很方便的切换到标记时的状态

比较有代表性的时人们会使用这个功能来标记发布节点(v1.0、v1.2等)下面是mybatis-plus的标签:

image-20231012153454796

标签相关的命令:

  • git tag 列出已有的标签

  • git tag [name] 创建标签

  • git push [shortName] [name] 将标签推送至远程仓库

  • git checkout -b [branch] [name] 检出标签

标签操作-列出已有的标签

列出已有的标签可以使用命令:git tag

image-20231012153953728

标签操作-创建标签

创建标签可以使用命令:git tag [name]

image-20231012154156313

在IDEA中使用Git

在IDEA中配置Git

在IDEA中使用Git,本质上还是使用本地安装的Git软件,所以 需要在IDEA中配置Git

image-20231012154958707

获取Git仓库

在IDEA中使用Git获取仓库有两种方式

  • 本地初始化cangku

  • 从远程仓库克隆

image-20231012155932138

image-20231012160001556

image-20231012160126041

本地仓库操作

本地仓库操作:

  • 将文件加入暂存区

  • 将暂存区的文件提交到版本库

  • 查看日志

远程仓库操作

远程仓库操作:

  • 查看远程仓库

  • 添加远程仓库

  • 推送至远程仓库

  • 从远程仓库拉取

分支操作

  • 查看分支

  • 创建分支

  • 切换分支

  • 将分支推送到远程仓库

  • 合并分支

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用git下载源码的步骤如下: 1. 首先,在Linux系统中安装git包。你可以从GitHub的官方网站上下载git包\[1\],或者使用包管理器来安装git。 2. 打开终端,使用以下命令克隆源码仓库: ``` git clone <仓库地址> ``` 例如,如果你要下载Google的LevelDB源码,可以使用以下命令: ``` git clone https://github.com/google/leveldb.git ``` 3. 进入克隆下来的源码目录: ``` cd <源码目录> ``` 例如,对于LevelDB源码,可以使用以下命令: ``` cd leveldb ``` 4. 编译源码。在编译源码之前,你需要确保已经安装了cmake,并且版本大于3.9\[2\]。根据具体的源码仓库提供的编译指南进行操作。你可以参考仓库的README文件或者官方文档\[3\]。 通过以上步骤,你就可以使用git下载源码并进行编译了。请注意,具体的下载和编译步骤可能因为不同的源码仓库而有所差异,所以最好参考仓库提供的文档进行操作。 #### 引用[.reference_title] - *1* *2* [在linux系统下Git源码系统的文件下载](https://blog.csdn.net/weixin_33558072/article/details/116855429)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [git 源码下载安装最新版本](https://blog.csdn.net/weixin_44554979/article/details/128505609)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值