带你一文吃透Git

这篇具有很好参考价值的文章主要介绍了带你一文吃透Git。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

带你一文吃透Git,软件工具,git,java,数据库

带你一文吃透Git,软件工具,git,java,数据库
你是否也想要一片绿呢?让我们一起往下看吧

一、什么是Git

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

  • 本地仓库:开发人员自己电脑上的 Git 仓库
  • 远程仓库:远程服务器上的 Git 仓库

带你一文吃透Git,软件工具,git,java,数据库

  • commit:提交,将本地代码和版本信息保存到本地仓库
  • push:推送,将本地仓库文件和版本信息上传到远程仓库
  • pull:拉取,将远程仓库文件和版本信息下载到本地仓库

二、Git下载与安装

下载地址:https://git-scm.com/download
带你一文吃透Git,软件工具,git,java,数据库
下载完成之后会得到该安装文件:
带你一文吃透Git,软件工具,git,java,数据库
点击,一路next即可,如何验证自己安装的是否成功呢?在任意目录下点击鼠标右键,如果可以看到下列菜单则表示安装完成:
带你一文吃透Git,软件工具,git,java,数据库

  • Git GUI Here:打开Git图形界面
  • Git Bash Here:打开Git命令行

三、Git代码托管服务

Git中存在两种类型的仓库,即本地仓库远程仓库,如何搭建Git远程仓库呢?
比较常用的有GitHub、码云、GitLab等。我们这里选取Gitee,因为服务器在国内,相比于Github,速度更快

使用码云代码托管服务

1、注册码云账号
注册网址:https://gitee.com/signup
带你一文吃透Git,软件工具,git,java,数据库
2、登录码云
带你一文吃透Git,软件工具,git,java,数据库
3、创建远程仓库
带你一文吃透Git,软件工具,git,java,数据库
填写仓库的一些基本信息:
带你一文吃透Git,软件工具,git,java,数据库
创建完成后可以查看仓库的一些信息:
带你一文吃透Git,软件工具,git,java,数据库
注意: 每个Git远程仓库都会对应一个网络地址,点击[克隆/下载],在弹出窗口点击[复制]按钮获得网络地址

4、邀请其他用户成为仓库成员
前面已经在码云上创建了自己的远程仓库,目前仓库成员只有自己一个人(身份为管理员)。在企业实际开发中,一个项目往往是由多个人共同开发完成的,为了使多个参与者都有权限操作远程仓库,就需要邀请其他项目参与者成为当前仓库的成员
带你一文吃透Git,软件工具,git,java,数据库

四、Git常用命令

Git全局设置

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

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

	// 设置用户信息
   git config --global user.name “itcast”
   git config --global user.email “hello@itcast.cn”
	// 查看配置信息
	git config --list

带你一文吃透Git,软件工具,git,java,数据库

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

获取Git仓库

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

获取Git仓库通常有两种方式:

  • 在本地初始化一个Git仓库(不常用)
  • 从远程仓库克隆(常用)

执行步骤如下:
1.在任意目录下创建一个空目录作为我们的本地Git仓库
2.进入这个目录打开Git Bash 窗口
3.执行 git init 命令
带你一文吃透Git,软件工具,git,java,数据库
如果在当前目录中看到.git文件夹(此文件夹为隐藏文件夹)则说明Git仓库创建成功

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

	// 克隆仓库
	git clone

带你一文吃透Git,软件工具,git,java,数据库

工作区、暂存区、版本库

版本库:前面看到的.git隐藏文件夹就是版本库,版本库中存储了很多配置信息、日志信息和文件版本信息等
带你一文吃透Git,软件工具,git,java,数据库

工作区:包含.git文件夹的目录就是工作区,也称为工作目录,主要用于存放开发的代码
带你一文吃透Git,软件工具,git,java,数据库

暂存区:.git文件夹中有很多文件,其中有一个index文件就是暂存区,也可以叫做stage。暂存区是一个临时保存修改文件的地方
带你一文吃透Git,软件工具,git,java,数据库

带你一文吃透Git,软件工具,git,java,数据库

Git工作区文件状态

Git工作区文件存在两大类状态:
1、untracked 未跟踪(未被纳入版本控制)
2、tracked 已跟踪(被纳入版本控制)

  1. Unmodified 未修改状态
  2. Modified 已修改状态
  3. Staged 已暂存状态

注意: 这些文件的状态会随着我们执行Git的命令发生变化
带你一文吃透Git,软件工具,git,java,数据库
带你一文吃透Git,软件工具,git,java,数据库

本地仓库操作

本地仓库常见命令如下:

	git status // 查看文件状态
	git add	   // 将文件修改加入暂存区
	git reset  // 将暂存区文件取消暂存或提交到指定版本
	git commit // 将暂存区文件提交到版本库
	git long   // 查看日志

带你一文吃透Git,软件工具,git,java,数据库

git status:
带你一文吃透Git,软件工具,git,java,数据库
git add:
带你一文吃透Git,软件工具,git,java,数据库
git reset:
带你一文吃透Git,软件工具,git,java,数据库
git commit:

	git commit -m "提交信息"

带你一文吃透Git,软件工具,git,java,数据库
git log:
带你一文吃透Git,软件工具,git,java,数据库
这里我们可以看到 Author中包含我们刚开始配置的全局信息username和mail

log 中有commit后面跟了一串版本信息,我们根据这些信息来进行reset指定版本

	git reset --hard

带你一文吃透Git,软件工具,git,java,数据库
带你一文吃透Git,软件工具,git,java,数据库
我们可以发现user.xml不见了,因为当时那个版本是没有user.xml的

远程仓库操作

前面执行的命令操作都是针对本地仓库的,现在我们来学习远程仓库的一些操作

	git remote		// 查看远程仓库
	git remote add  // 添加远程仓库
	git clone       // 从远程仓库克隆
	git pull        // 从远程仓库拉取
	git push        // 推送到远程仓库

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

带你一文吃透Git,软件工具,git,java,数据库
带你一文吃透Git,软件工具,git,java,数据库
因为该仓库是我们手动git init,而不是从远程仓库克隆下来的,所以我们发现该本地仓库就没有与之关联的远程仓库

添加远程仓库:
添加远程仓库,运行 git remote add <shortname> <url> 添加一个新的远程 Git 仓库,同时指定一个可以引用的简写
带你一文吃透Git,软件工具,git,java,数据库

克隆远程仓库到本地:
如果你想获得一份已经存在了的 Git 远程仓库的拷贝,这时就要用到 git clone 命令。 Git 克隆的是该 Git 仓库服务器上的几乎所有数据(包括日志信息、历史记录等),而不仅仅是复制工作所需要的文件。
克隆仓库的命令格式是: git clone [url]
带你一文吃透Git,软件工具,git,java,数据库

推送至远程仓库:
将本地仓库内容推送到远程仓库,可以使用命令:git push [remote-name] [branch-name]
带你一文吃透Git,软件工具,git,java,数据库
带你一文吃透Git,软件工具,git,java,数据库
在使用git push命令将本地文件推送至码云远程仓库时,需要进行身份认证,认证通过才可以推送,如下:

带你一文吃透Git,软件工具,git,java,数据库
从远程仓库拉取:
git pull 命令的作用是从远程仓库获取最新版本并合并到本地仓库,命令格式:git pull [short-name] [branch-name]
带你一文吃透Git,软件工具,git,java,数据库
注意: 如果当前本地仓库不是从远程仓库克隆,而是本地创建的仓库,并且仓库中存在文件,此时再从远程仓库拉取文件的时候会报错(fatal: refusing to merge unrelated histories )

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

分支操作

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

同一个仓库可以有多个分支,各个分支相互独立,互不干扰。通过git init 命令创建本地仓库时默认会创建一个master分支。

	git branch					// 查看分支
 	git branch [name]			// 创建分支
	git checkout [name]			// 切换分支
 	git push [shortName] [name]	// 推送至远程仓库分支
 	git merge [name]			// 合并分支

查看分支:

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

带你一文吃透Git,软件工具,git,java,数据库
带你一文吃透Git,软件工具,git,java,数据库
带你一文吃透Git,软件工具,git,java,数据库
创建分支:
创建分支命令格式:git branch [name]
带你一文吃透Git,软件工具,git,java,数据库
切换分支:
切换分支命令格式:git checkout [name]
带你一文吃透Git,软件工具,git,java,数据库
推送至远程仓库分支:
推送至远程仓库分支命令格式:git push [shortName] [name]
带你一文吃透Git,软件工具,git,java,数据库
带你一文吃透Git,软件工具,git,java,数据库
合并分支:
合并分支命令格式:git merge [name]
带你一文吃透Git,软件工具,git,java,数据库

合并冲突

在Git中,合并冲突是指在执行git merge或git pull等操作时,如果发现同时修改了同一个文件的同一部分代码,Git无法自动决定应该保留哪个修改,从而导致合并失败。解决合并冲突需要手动编辑文件,选择要保留的修改内容,并提交解决冲突的版本。

下面是解决合并冲突的一般步骤:

1.使用git status命令查看哪些文件存在合并冲突。

2.打开包含冲突的文件,可以看到类似于以下的标记:
带你一文吃透Git,软件工具,git,java,数据库

3.根据需要,手动编辑文件,解决冲突。可以选择保留当前分支的代码、合并分支的代码,或者根据具体需求进行自定义修改。

4.解决冲突后,保存文件,移除文件中的冲突标记。

5.使用git add命令将已解决冲突的文件标记为已暂存的状态。

6.最后,执行git commit命令来提交解决冲突的版本。通常,Git会自动生成一条合并提交的信息,你可以根据需要进行编辑。

7.如果是在pull操作时解决冲突,可能还需要执行git pull命令来确认合并已成功解决。

标签操作

Git 中的标签,指的是某个分支某个特定时间点的状态。通过标签,可以很方便的切换到标记时的状态。
比较有代表性的是人们会使用这个功能来标记发布结点(v1.0 、v1.2等)。下面是mybatis-plus的标签:
带你一文吃透Git,软件工具,git,java,数据库

 git tag							列出已有的标签
 git tag [name]						创建标签
 git push [shortName] [name]		将标签推送至远程仓库
 git checkout -b [branch] [name]	检出标签

列出已有的标签:
列出已有的标签可以使用命令:git tag
带你一文吃透Git,软件工具,git,java,数据库
创建标签:
创建标签可以使用命令:git tag [name]
带你一文吃透Git,软件工具,git,java,数据库
将标签推送至远程仓库:
将标签推送至远程仓库的命令格式:git push [shortName] [name]
带你一文吃透Git,软件工具,git,java,数据库

检出标签:
检出标签时需要新建一个分支来指向某个标签,检出标签的命令格式:git checkout -b [branch] [name]
带你一文吃透Git,软件工具,git,java,数据库文章来源地址https://www.toymoban.com/news/detail-602291.html

到了这里,关于带你一文吃透Git的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【C++】一文带你吃透C++多态

    🍎 博客主页:🌙@披星戴月的贾维斯 🍎 欢迎关注:👍点赞🍃收藏🔥留言 🍇系列专栏:🌙 C/C++专栏 🌙那些看似波澜不惊的日复一日,一定会在某一天让你看见坚持的意义!-- 算法导论🌙 🍉一起加油,去追寻、去成为更好的自己! @TOC 提示:以下是本篇文章正文内容,

    2024年02月08日
    浏览(68)
  • 一文带你入门并吃透状态压缩DP

    【本文比较适合有一定动态规划和位运算基础的童鞋阅读】 首先先讲讲什么是状态压缩 状态压缩 就是使用某种方法,简明扼要地以最小代价来表示某种状态,通常是用一串01数字(二进制数)来表示各个点的状态。这就要求使用状态压缩的对象的点的状态必须只有两种,0

    2024年02月09日
    浏览(58)
  • 【Web前端】一文带你吃透CSS(中篇)

    前端学习路线小总结 : 基础入门: HTML CSS JavaScript 三大主流框架: VUE REACT Angular 深入学习: 小程序 Node jQuery TypeScript 前端工程化

    2023年04月25日
    浏览(51)
  • 【Web前端】一文带你吃透CSS(完结篇)

    前端学习路线小总结 : 基础入门: HTML CSS JavaScript 三大主流框架: VUE REACT Angular 深入学习: 小程序 Node jQuery TypeScript 前端工程化

    2024年01月20日
    浏览(54)
  • 【Spring】一文带你吃透基于注解的DI技术

    个人主页: 几分醉意的CSDN博客_传送门 基于注解的DI:使用spring提供的注解,完成java对象创建,属性赋值。 注解使用的核心步骤: 1.在源代码加入注解,例如@Component。 2.在spring的配置文件,加入组件扫描器的标签。 @Component: 表示创建对象,对象放到容器中。 作用是 声明组件

    2024年02月03日
    浏览(92)
  • 【Spring】一文带你吃透AOP面向切面编程技术(上篇)

    个人主页: 几分醉意的CSDN博客_传送门 什么是AOP? AOP(Aspect Orient Programming):面向切面编程 Aspect:表示切面,给业务方法增加的功能,叫做切面。切面一般都是非业务功能,而且切面功能一般都是可以复用的。例如日志功能,事务功能,权限检查,参数检查,统计信息等等

    2024年01月16日
    浏览(65)
  • 一文带你吃透JSP,增删改查实战案例详细解读

    不得不说,JSP 现在已经是一门十分老旧的技术了,学习编程时,不仅要学习优秀的前言技术,还要对基础有一定的把握,所以学习 JSP 时,我们只做了解,不用刨根问底花费大量的时间,得不偿失。 我们主要从以下几个方面学习 JSP 技术: 理解 JSP 及其原理 学会使用 EL 表达

    2024年02月03日
    浏览(50)
  • 【C++】一文带你吃透string的模拟实现 (万字详解)

    (꒪ꇴ꒪(꒪ꇴ꒪ )🐣,我是 Scort 🎓 🌍博客主页:张小姐的猫~江湖背景 快上车🚘,握好方向盘跟我有一起打天下嘞! 送给自己的一句鸡汤🤔: 🔥真正的大师永远怀着一颗学徒的心 作者水平很有限,如果发现错误,可在评论区指正,感谢🙏 🎉🎉欢迎持续关注! 🎨传统写

    2024年02月03日
    浏览(205)
  • 【Kubernetes 系列】一文带你吃透 K8S 应用pod结点

    作者:半身风雪 上一节:创建K8s集群项目 简介:上一节我们一起学习了,如何去部署一个K8S 的应用程序,这一节,我们主要讲解一下,K8S 应用的框架结构。 本节我将和大家一起学习Kubernetes 应用中的pod结点 了解 Kubernetes Pod。 了解 Kubernetes 工作节点。 对已部署的应用故障排

    2023年04月08日
    浏览(127)
  • 一文读懂版本控制软件:Git、SVN、HG、CVS(内附Git资料)

    什么是版本控制? 你可以把一个版本控制系统理解为\\\"数据库\\\",在需要的时候,它可以帮你快速保存一个项目的快照,当你需要查看上一个版本时(即快照),版本控制系统可以显示出当前版本与上一个版本之间所改动的细节。 版本控制有什么优势? 1、更快、更简单的错误

    2024年02月20日
    浏览(58)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包