Git使用教程(很详细)

一、Git简介

1.1 项目的版本管理

在项目开发过程中,项目没开发到一个节点就会对当前项目进行备份,这个备份就是项目的一个版本;当我们继续开发一个阶段后,再次进行备份,就生成新的版本——多个版本的集合就是项目的版本库

在项目版本管理中,我们可以使用手动进行管理,但是存在一些问题:

  • 需要手动维护版本的更新日志,记录每个版本的变化
  • 需要手动查找历史版本,当历史版本比较多的时候,查找工作很繁琐
  • 当我们需要回退到某个版本时,只能够手动的通过IDE工具手动打开
1.2 团队协同开发

在这里插入图片描述

1.3 版本管理工具—Git

Git是一个开源的分布式版本控制系统,用于敏捷高效的处理任何大小项目的版本管理。

核心功能:

  • 项目的版本管理
  • 团队协同开发

二、Git下载及安装

2.1 下载Git
https://git-scm.com/
在这里插入图片描述
2.2 安装Git

除了选择安装位置以外,其他都傻瓜式安装

2.3 检查
  • win + r
  • 输入cmd
  • 输入 git --version

三、Git架构

在这里插入图片描述

四、Git基本使用

4.1 创建版本库
  • 在工作空间的目录中,右键“Git Bash Here”打开git终端

  • 在Git终端中输入git init指令,创建版本库(就是一个.git目录)
    在这里插入图片描述

4.2 查看版本库状态
git status
4.3 将工作空间的修改添加到暂存区
git add a.txt   ## 只将工作空间中的某个文件add到暂存区
git add . ## 将工作空间中所有文件都add暂存区
4.4 将暂存区内容提交到版本库(仓库)
git commit -m '版本说明'
4.5 查看版本库中的历史版本
git log --oneline  ## 每个版本信息只显示一行
get log  ## 显示每个版本的详细信息
4.6 设置用户信息

因为我们将暂存区的内容提交到版本时,会记录当前版本的提交的用户信息,因此在版本提交之前需要先绑定用户信息

git config --global user.name 'ergou'
git config --global user.email 'haha@hehe.com'
4.7 同步历史版本到工作空间
git checkout 版本号

五、远程仓库

5.1 远程仓库

远程仓库,远程版本库;实现版本库的远程存储,以实现团队的协同开发

在这里插入图片描述

5.2 如何获得远程仓库
  • 使用GitLab搭建私服
  • 远程仓库提供商
    • GitHub https://gitbub.com
    • Gitee(码云) https://gitee.com
    • Coding
5.3 创建远程仓库(码云)
  • 注册账号

    在这里插入图片描述

  • 创建远程仓库:https://gitee.com/qfytao/j2010.git

  • 远程仓库管理(添加开发人员)

    在这里插入图片描述

六、远程仓库操作

6.1 push本地仓库到远程仓库
6.1.1 准备工作
  1. 创建本地工作空间

    D:\fmwy
    	src
    		main
    			java
    			resources
    		test
    			java
    	pom.xml
    
  2. 初始化本地仓库

    git init
    
  3. 将工作空间搭建的项目结构add到暂存区

    git add .
    
  4. 将暂存区文件提交到版本库,生成第一个版本

    git commit -m '创建项目'
    
  5. 为当前项目创建一个远程仓库

    https://gitee.com/qfytao/fmwy.git

6.1.2 本地仓库关联远程仓库

建立D:\fmwy中的本地仓库 和 远程仓库https://gitee.com/qfytao/fmwy.git的关联

 git remote add origin https://gitee.com/qfytao/fmwy.git
6.1.3 查看远程仓库状态
git remote -v
6.1.4 将本地仓库push到远程仓库

push到远程仓库需要gitee的帐号和密码

git push origin master

在这里插入图片描述

6.2 其他开发者pull远程仓库到本地

其他开发者:www.1114325587@qq.com *****

6.2.1 先创建本地仓库
  • 在E盘创建ws目录(空目录),进入ws目录,打开Git客户端

  • 创建本地版本库

    git init
    
6.2.2 拉取远程仓库到本地
  • 拉取远程仓库

    git pull 远程仓库地址 master
    git pull https://gitee.com/qfytao/fmwy2.git master
    
6.3 解决协同开发冲突问题
场景:    Helloworld.java  [bbb]

开发者1:辉哥                              开发者2:小乔
-------------------------------------------------------------------------------------------
git pull fmwy2 master                    git pull fmwy2 master							
									     在Hellworld.java中新增内容 “bbb”
在Hellworld.java中新增内容 “aaa”
									     git add .
									     git commit -m ''
									     git push fmwy2 master
git add .
git commit -m ''
git push fmwy2 master【会失败!!!----在我pull之后,push之前被其他开发人员push过】


问题:我该如何操作?
git pull fmwy2 master 【将小乔修改的内容拉取到我本地】

对文件进行冲突合并

git add .
git commit -m ''
git push fmwy2 maste

HelloWorld.java

>>>>>>>>>>>>>>>>>>>>>HEAD
aaa
=================
bbb
<<<<<<<<<<<<<<<<<<<<< sikdfhjkasdfhjasdfhjk

七、分支管理

7.1 什么是分支

分支就是版本库中记录版本位置(支线),分支之间项目会影响,使用分支可以对项目起到保护作用

分支就是一条时间线,每次提交就在这条时间线上形成一个版本

7.2 分支特性
  • 创建一个新的版本库,默认创建一个主分支—master分支
  • 每个分支可以进行单独管理(常规分支、保护分支、只读分支)
  • 分支是可以合并的
7.3 分支操作
7.3.1 创建分支
git branch branch_name
7.3.2 查看分支
git branch
7.3.3 切换分支
git branch branch_name  # 切换到指定分支上的最新版本
7.3.4 检出分支
git checkout 历史版本 -b branch_name  # 签出指定的历史版本创建新分支
7.3.5 分支合并
  • 三方合并
  • 快速合并
# 在master分支执行 git merge dev   表示将dev分支合并merge
git merge breanch_name

八、Idea整合Git使用

作为Java开发工程,我们代码的编写工作都是在IDE工具(idea)中完成,因此我们需要了解和掌握直接使用IDE工具完成Git的操作

8.1 IDEA关联Git

在这里插入图片描述

8.2 IDEA中Git版本管理

准备工作:打开IDEA新建一个web工程

8.2.1 创建本地版本库

在这里插入图片描述
在这里插入图片描述

8.2.2 设置忽略文件

在工作空间中有些文件是不需要记录到版本库中的(例如.idea、target、.iml文件),可以通过设置忽略提交来实现

  • 在工作空间的根目录(项目的根目录)中创建一个名为.gitignore文件

  • .gitignore文件配置忽略过滤条件

    .idea
    target
    *.iml
    
8.2.3 将工作空间add到暂存区
  • 选择项目/文件—右键—Git—Add(添加到暂存区的文件–绿色)

  • 如果一个文件创建好之后还没有添加到暂存区–棕红色

  • 添加到暂存区的操作可以设置默认添加

    在这里插入图片描述

8.2.4 将暂存区提交到版本库
  • 选择项目/文件—右键—Git–Commit(记录到版本库的文件–黑色)

  • 如果对记录到 版本库的文件进行了修改,也就是说工作空间和版本库不一致–蓝色

8.3 IDEA中Git分支管理
8.3.1 创建分支
  • 点击IDEA右下角Git
  • 在弹窗中点击New Branch
  • 输入新分支的名称
8.3.2 切换分支
  • 点击IDEA右下角Git
  • 点击非当前分支右边的箭头
  • 在选项卡点击checkout
8.3.3 删除分支
点击右小角git
在这里插入图片描述
8.3.4 合并分支

例如:将dev合并到master

  • 切换到master分支
  • 点击dev分支右面的箭头,在展开的菜单中选择Merge into current
8.4 IDEA中使用Git进行团队协同开发
8.4.1 项目管理者
  1. 完成项目搭建

  2. 为当前项目创建本地版本库

  3. 将搭建好的项目提交到本地版本库

    • add到暂存区
    • commit到版本库
  4. 创建远程版本库(远程仓库)

    • 管理—添加开发者
  5. 将本地仓库push到远程仓库(master分支——master分支)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
  1. 在本地创建dev分支

    在远程仓库checkout as 新建本地dev分支(master需要进行保护)

    在这里插入图片描述
    在这里插入图片描述
  2. 将本地dev分支push到远程仓库,新建远程仓库的dev分支

    在这里插入图片描述

  3. 设置远程仓库中master分支为保护分支

    在这里插入图片描述

8.4.2 项目开发者
  1. 从管理员提供的远程仓库pull项目到本地

    • 远程仓库 https://gitee.com/xxxx
    在这里插入图片描述
    在这里插入图片描述
  2. 打开项目(此时本地工作空间的项目和远程仓库是同步的)

  3. 开发步骤:

    • 选择要修改的文件–pull
    • 进行修改操作
    • 测试本地修改
    • add到暂存区
    • commit到本地版本库
    • push到远程仓库(dev)
8.5 解决团队协同开发的冲突问题

冲突:在pull之后,push之前被其他开发者这push成功

  • 选择产生冲突的文件—pull
  • 弹出弹窗提示:accpet yours | accept theirs | Merge
    • accpet yours 保留自己的版本(提交时会覆盖其他开发者代码)
    • accpet theirs 保留远程仓库上的版本(会导致自己修改的代码丢失)
    • Merge 手动合并(和其他开发者沟通合并方案)
  • 19
    点赞
  • 56
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Git是一种版本控制系统,用于记录代码的改动,协作开发,和代码管理。Git有很多功能和优势,但一开始学习可能会感到困难,因为它的术语和操作需要一些时间来理解。下面是一个简单的教程,用于介绍Git的基本概念和用法: 1.安装Git:首先你需要下载Git,并按照安装向导进行安装。在Windows系统中,你将看到有一个新的Git Bash窗口,用来输入Git命令。 2.创建仓库:如果你想要将一个项目加入Git进行版本控制,那么你首先需要在你的本地计算机上创建一个仓库。打开Git Bash窗口,输入如下命令来创建一个名为MyProject的仓库: mkdir MyProject cd MyProject git init 3.添加文件:现在,你已经有一个新的仓库,但它是空的。你可以使用命令添加项目中的文件到仓库中。 git add . 4.提交代码:当你改动了文件并想要将它们保存到Git仓库时,你需要使用提交指令。 git commit -m "这里输入你的提交信息" 5.推送至远程仓库:一旦你的本地仓库中的代码得到了提交,并想要在分支中共享它们,你可以使用如下命令将提交的代码推送至远程仓库。 git push origin master 通过以上的5个简单步骤,就可以将你的项目加入到Git中进行版本控制,管理和协作开发了。这是最简单、最清晰易懂的Git使用教程。这里面还有许多更多的高级含义,例如Git的分支,标签,拉取,合并等等,掌握这些功能,需要更进一步的学习和实践。 ### 回答2: Git是一个强大的版本控制系统,它是程序员必须掌握的技能之一。但是,学习Git可能会令人感到有些困难,因为它有其特定的术语和工作流程。下面将为大家提供一份最详细最傻瓜的Git使用教程。 一. Git的安装 首先,你需要安装Git客户端。在Windows系统上可以使用Git Bash或Git GUI, 在Mac或Linux系统上可以使用Git命令行工具。 Git官方网站提供了Git客户端的下载或者直接在命令行使用安装命令进行安装。 二. Git配置 在安装Git之后,你需要对Git进行配置。 通过运行以下两个命令,你可以设置你的用户名和电子邮件地址,这将用于你提交的每个代码的作者身份标记。 git config --global user.name "Your Name" git config --global user.email "youremail@yourdomain.com" 三. 创建和克隆仓库 在Git中,你可以使用init命令创建一个新的仓库。 mkdir mynewproject cd mynewproject git init 你也可以使用clone命令从一个现有仓库进行克隆。 git clone https://github.com/youruser/yourproject.git 四. Git基本的工作流程 在Git中,你需要使用工作区,暂存区和版本库来管理代码。 首先,你需要将代码添加到暂存区中以进行跟踪。 git add myfile.py 然后,你需要将更改提交到版本库中。 git commit -m "Added new feature to myfile.py" 在有多个开发人员协同工作的项目中,每个人都应该在开始工作之前使用pull命令获取最新的代码版本。 git pull 然后,进行开发和更改后,如果你想将更改推送到远程仓库并与团队共享,请使用push命令。 git push origin master 五. Git常用命令 在Git中,你需要掌握以下常用命令。 - git init - 初始化仓库 - git clone - 克隆一个现有仓库 - git add - 添加文件或文件夹 - git commit - 将更改提交到版本库中 - git push - 推送更改到远程仓库 - git pull - 拉取最新的代码版本 - git status - 显示当前代码的状态 - git branch - 显示所有分支 - git checkout - 切换到另一个分支 - git merge - 合并两个分支 - git diff - 显示两个版本之间的差异 六. Git的分支管理 分支是Git最重要的特性之一。在开发过程中,团队中的每个成员都应该使用自己的分支。下面是一些有用的分支管理命令。 - git branch - 列出所有分支 - git branch newbranch - 创建一个新分支 - git checkout branchname - 切换到另一个分支 - git merge branchname - 将分支的更改合并到当前分支中 - git branch -d branchname - 删除特定的分支 七. 总结 本篇文章提供了Git使用教程详细最傻瓜的步骤和命令列表。如果你是初学者,建议先从一些简单的Git使用场景入手,然后扩展到更复杂的方法。如果你在使用Git时遇到问题,请在Stack Overflow或其他技术社区寻求帮助。总之,使用Git来管理你的代码将大大提高你的编程效率。 ### 回答3: Git 是一款非常流行的源代码管理工具,它具有分布式、速度快、支持大型项目等优点。但对于初学者来说,可能会觉得 Git 使用起来有些困难和复杂。 以下是 Git 使用教程详细最傻瓜的步骤: 第一步:安装 Git 工具 需要在官网上下载并安装 Git 工具。macOS 和 Linux 系统已经内置了 Git,只需在终端中输入 git --version 即可查看是否已安装 Git。 第二步:创建本地仓库 首先在本地新建一个文件夹,然后通过终端进入该文件夹。在终端输入 git init,该文件夹就会成为一个本地的 Git 仓库。 第三步:添加文件 在该文件夹中添加需要版本管理的文件,然后在终端中输入 git add .,用来把文件添加到暂存区。 如果只想提交某个文件,则可以使用 git add 文件名 的形式。 第四步:提交文件 在终端中输入 git commit -m "描述信息",用来将文件提交到本地 Git 仓库中。其中描述信息是对此次提交的说明,可以写明本次提交的内容、修改的文件以及其他需要说明的信息。 第五步:创建远程仓库 在 Github 等代码托管平台中创建一个仓库,用于同步本地 Git 仓库中的代码。 然后通过 git remote add origin 远程仓库地址 的方式将本地仓库与远程仓库关联起来。 第六步:推送到远程仓库 在终端中输入 git push -u origin master 将本地仓库的代码上传到远程仓库中。这里 origin 是远程仓库的别名,master 表示上传到主分支中。 之后每次提交代码时,只需执行 git push 命令即可将修改的代码推送到远程仓库中。 以上就是 Git 使用教程详细最傻瓜的步骤,尽管 Git 使用起来可能不是那么容易,但只要跟着这些简单的步骤操作,就能够轻松地做到版本管理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值