Git(教程总结啊啊啊啊啊)

本文详细介绍了Git的使用,包括下载安装与环境配置,强调使用前需配置用户名和邮箱。阐述了Git基本命令及本地操作重点命令,如init、add、commit、push等。还提及在Gitee操作、IDEA集成Git,以及Git分支常用指令和多人开发时提交代码的流程。

1.GIit的简介

在这里插入图片描述

2.Git的下载安装和配置环境

2.1
在这里插入图片描述
下载完后,一路默认安装即可!
git已自动帮你在环境变量中配好,无需你手动配置!

2.2 git使用之前一定要先配置用户名和邮箱 否则的话可能导致代码上传失败
2.3 找到C盘哪里右键打开git bash here,按照截图流程修改自己的信息,即可,操作成功后会在C盘那个路径生成。gitconfig文件,你打开看到是自己设置的信息 即可
在这里插入图片描述

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

3.Git的基本命令和操作

3.1 到你所要操作的文件夹,右键,选择下面一种进行操作即可
在这里插入图片描述
3.2 因为git也是Linux的创始人Linux花费两周写出来的,所以其的操作命令和linux一样,可以在相对应的文件中多点操作,练熟以下命令,对以后学习Linux也有帮助,一举多得,何乐不为!
在这里插入图片描述

4.git本地操作的几个命令(重点)

在这里插入图片描述

4.1 四个命令首先
git init --》git add .添加所有文件到暂存区–》
git commit -m 提交暂存区的内容到本地仓库 -m就是提交信息-》
git push提交到远程仓库
git status查询当前状态

在桌面创个文件夹,第一步右键打开git bash here命令然后执行git init ,第二步然后随意创个hello.txt文件, 第三步执行git add .命令将所有文件到暂存区, git commit -m 提交暂存区的内容到本地仓库 -m就是提交信息,最后一步git push提交到远程仓库,可以每做一步git status查询以下当前文件状态,就这了!加油 铁汁们 好好学习 天天向上!在这里插入图片描述

Gitee

新建仓库
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
克隆到本地仓库在这里插入图片描述

IDEA中集成Git

  1. 新建项目

    • 将远程的git文件目录拷到项目中即可!
    • 在这里插入图片描述
      在这里插入图片描述
      刷新后,就连接好了git ps:刷新字体没变红的话,可以重启下idea或者alt+9 即可在这里插入图片描述
      在这里插入图片描述
  2. 修改文件,使用IDEA操作git

    • 添加到暂存区
    • commit 提交
    • push到远程仓库
  3. 提交测试

    在这里插入图片描述
    4.操作上传文件控制台步骤在这里插入图片描述
    在这里插入图片描述
    把默认的idea上传,配置好配置文件,下次不再上传

以上这些都是单个人的操作!

git分支

  1. git分支中常用指令

    • 列出所有本地分支

    git branch

  • 列出所有远程分支

    git branch -r

  • 新建一个分支,但是依然停留在当前分支

    git branch dev

    新建的分支可以在idea中看到
    在这里插入图片描述

    • 删除分支

      git branch -d dev

多个分支,就会导致我们代码不冲突,也就是同时存在多个版本!

本地上传代码到远程仓库
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

git add添加到暂缓区–>git commit 上传到本地空间–>git push 上传到远程仓库 git使用之前一定要先配置用户名和邮箱 否则的话可能导致代码上传失败

git 为什么要先commit,然后pull,最后再push?而不是commit然后直接push?
情况是这样的,现在远程有一个仓库,分支就一个,是master。然后我本地的仓库是从远程的master上clone下来的。大家都是clone下来,再在自己本地改好,再commit然后pull然后push,大家都是这么做的。那么现在问题来了:

1,那我本地这个也算是个分支?还是就是一个本地仓库?

答:本地和远程的关系相当于两个分支,你感觉一样是因为你git pull 的时候已经自动给绑定好对应关系了, set-upstream…balbala

2,如果我在远程新建了个分支,然后我pull了下来,那我本地到底有分支这个说法吗?我本地的分支是不是就是那个远程新建的分支?

答:你远程新建了一个分支拉到本地的道理是一样的,属于复制了一份,但是本地分支和远程分支已经是两个东西了

3,本地仓库和本地分支有什么区别?

答:本地分支属于本地仓库里,是包含关系,一个仓库里可以有很多分支

4,commit是提交到本地仓库,然后push,这个push是把所有代码推到远程仓库,还是只是把commit的地方推到远程仓库?

答:肯定不会全量推送到远程的,是通过对比 commit 的记录,如果本地高于远程就直接把多出来的commit 给怼上去,如果本地分支的最新版本和远程的 commit 有冲突,就需要解决冲突。

5,那为什么要先commit,然后pull,然后再push,我pull了,岂不是把自己改的代码都给覆盖掉了嘛,因为远程没有我改的代码,我pull,岂不是覆盖了我本地的改动好的地方了?那我还怎么push?

答:这个先 commit 再 pull 最后再push 的情况就是为了应对多人合并开发的情况,

commit 是为了告诉 git 我这次提交改了哪些东西,不然你只是改了但是 git 不知道你改了,也就无从判断比较;

pull是为了本地 commit 和远程commit 的对比记录,git 是按照文件的行数操作进行对比的,如果同时操作了某文件的同一行那么就会产生冲突,git 也会把这个冲突给标记出来,这个时候就需要先把和你冲突的那个人拉过来问问保留谁的代码,然后在 git add && git commit && git pull 这三连,再次 pull 一次是为了防止再你们协商的时候另一个人给又提交了一版东西,如果真发生了那流程重复一遍,通常没有冲突的时候就直接给你合并了,不会把你的代码给覆盖掉

出现代码覆盖或者丢失的情况:比如A B两人的代码pull 时候的版本都是1,A在本地提交了2,3并且推送到远程了,B 进行修改的时候没有commit 操作,他先自己写了东西,然后 git pull 这个时候 B 本地版本已经到3了,B 在本地版本3的时候改了 A 写过的代码,再进行了git commit && git push 那么在远程版本中就是4,而且 A 的代码被覆盖了,所以说所有人都要先 commit 再 pull,不然真的会覆盖代码的

6,两个分支A和B,A合并B和B合并A,有区别吗?

答:两个互相合并的唯一区别就是 A->B 的时候 B 分支上会产生一个 merge_commit ,被改变的分支是 B ;如果现在没有发生任何改动执行 B->A ,则A和B两分支才会完全相同。

徐增友

多练!!!

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Java中的战斗机

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值