0


git基础教程-从git基础认识到gitee配置

目录

前言

本文中可以学到:

了解Git基本概念
能够概述git工作流程
能够使用Git常用命令
熟悉Git代码托管服务
能够使用idea操作git`

一、什么是git?

git是分布式版本控制工具。
分布式版本控制系统没有“中央服务器”,每个人的电脑上都是一个完整的版本库,这样工作的时候,无
需要联网了,因为版本库就在你自己的电脑上。多人协作只需要各自的修改推送给对方,就能互相看到对方的修改了。

二、git的工作流程

提示:先看图了解了解,看了后面文章会逐渐明白;

在这里插入图片描述

三、git的常用命令

在使用之前需要安装好git工具:点击下载

安装完成后要进行配置 

1 配置

git config --global user.name " username"
git config --global user.email “useremail”

2查看配置信息

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

3. 基础操作指令

  1. 理解代码在本地的存储

在这里插入图片描述
命令解释touch filename创建文件vi filename编辑文件git add .将工作区内容提交到暂存区git commit -m “注释内容”将暂存区的内容存到仓库git status查看当前暂存区的状态

  • 版本回退
    命令解释git reset --hard commitID回退到指定版本的IDgit-log查看当前的版本(一行)git log查看当前的版本(多行)git reflog查看删除提交记录

  • 分支的切换
    命令解释git checkout 分支名切换分支到 分支名git checkout -b 分支名切换分支到 分支名(不存在则创建)

  • 分支的创建
    命令解释git branch查看当前的分支git branch 分支的名称创建分支git checkout分支名 切换分支git-log查看分支的信息

  • 解决冲突 案例: 1.假如在dev与master分支下都有file02.txt的文件。 2.其中dev下file02.txt内容为:dev file02.txt; 3.master下file02.txt内容为:master file02.txt; 4.现在我们分别在master分支与dev分支下提交内容; 5.合并分支dev到master,出现错误:

Auto-merging file02.txt
CONFLICT (content): Merge conflict in file02.txt
Automatic merge failed; fix conflicts and then commit the result.

且文件内容如下:

<<<<<<< HEAD
master update file02.txt
=======
dev update file02.txt
>>>>>>> dev

解决冲突,手动去解决冲突,比如我将文件内容改为了:master update file02.txt

最后使用git add . git commit -m “提交冲突”

四、git代码托管平台

0.介绍

前面我们已经知道了Git中存在两种类型的仓库,即本地仓库和远程仓库。那么我们如何搭建Git远程仓库呢?我们可以借助互联网上提供的一些代码托管服务来实现,其中比较常用的有GitHub、码云、GitLab等。

  • gitHub( 地址:https://github.com/ )是一个面向开源及私有软件项目的托管平台,因为只支持 Git 作为唯一的版本库格式进行托管,故名gitHub
  • 云(地址: https://gitee.com/ )是国内的一个代码托管平台,由于服务器在国内,所以相比于 GitHub,码云速度会更快
  • GitLab (地址: https://about.gitlab.com/ )是一个用于仓库管理系统的开源项目,使用Git作 为代码管理工具,并在此基础上搭建起来的web服务,一般用于在企业、学校等内部网络搭建git私服。

1.注册gitee

注意:github由于网络访问原因,这里我们教程使用gitee. 
  1. 请点击注册
  2. 新建仓库在这里插入图片描述

2. 配置SSH公钥

在本机git环境下:如下图(重要信息大码,看命令及可)

注意:以下所有命令要保证已经完成git config 配置,及 (三 1. )部分

在这里插入图片描述

  1. 生成SSH公钥
  • ssh-keygen -t rsa - 不断回车 - 如果公钥已经存在,则自动覆盖
  1. Gitee设置账户共公钥
  • 获取公钥 - cat ~/.ssh/id_rsa.pub在这里插入图片描述
  1. 验证是否配置成功 ssh -T git@gitee.com

3.操作远程仓库

  1. 添加远程仓库此操作是先初始化本地库,然后与已创建的远程库进行对接。
  • 命令: git remote add <远端名称> <仓库路径> - 远端名称,默认是origin,取决于远端服务器设置- 仓库路径,从远端服务器获取此URL- 例如: git remote add origin git@gitee.com:czbk_zhang_san/git_test.git
  1. 查看远程仓库
  • 命令:git remote
  1. 推送本地代码到远程仓库
  • 命令:git push [-f] [–set-upstream] [远端名称 [本地分支名][:远端分支名] ] - 如果远程分支名和本地分支名称相同,则可以只写本地分支 - git push origin master
  • -f 表示强制覆盖
  • –set-upstream 推送到远端的同时并且建立起和远端分支的关联关系。 - git push --set-upstream origin master
  • 如果当前分支已经和远端分支关联,则可以省略分支名和远端名。 - git push 将master分支推送到已关联的远端分支。
  1. 使用git branch -vv 查看分支之间的关系,本地master绑定远端的master

注意:有可能会报错:

https://gitee.com/qsq/git-test.git/': The requested URL returned error: 403

y@LBDTOP-7777LAPAE MINGW64 ~/Desktop/git-test/test01 (master)

解决方案:

控制面板 > 用户帐户 > 凭据管理器 > Windows 凭据 > 通用凭据

接下来,删除 Gitte 密钥。

在这里插入图片描述


4.0 远端冲突解决方案

  1. 问题: 在一段时间,A、B用户修改了同一个文件,且修改了同一行位置的代码,此时会发生合并冲突。 A用户在本地修改代码后优先推送到远程仓库,此时B用户在本地修订代码,提交到本地仓库后,也需要推送到远程仓库。但提交时候会出现错误:
![rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'https://gitee.com/qqq/git-test.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards'in'git push --help'for details.
  1. 解决办法:因为此时B用户晚于A用户,故B用户需要先拉取远程仓库的提交,经过合并后才能推送到远端分支。在这里插入图片描述
  2. 指令:
  - git pull                              //拉去代码到本地;
  - 手动修改冲突。
  - gitadd.                      //提交到暂存区
  - git commit -m'修改冲突'        //提交到本地仓库
  - git push                          //提交到远端仓库

冲突如下:
在这里插入图片描述
手动解决冲突:
在这里插入图片描述

  1. 总结 解决冲突办法:把远端仓库代码拉到本地,再本地解决,解决完成后推送到远端。

五、使用idea操作git

1.创建远端仓库

在这里插入图片描述

2.初始化本地仓库

  • 确定git版本在这里插入图片描述
  • 将代码变为本地仓库

在这里插入图片描述

3.设置远端仓库:

在这里插入图片描述

4 提交代码

在这里插入图片描述

5.推送代码到远端仓库

在这里插入图片描述

6.克隆代码到本地

在这里插入图片描述

7.创建分支

  • 常规方法

在这里插入图片描述

  • 更简洁方便的在这里插入图片描述

8.切换分支

在这里插入图片描述

9.解决冲突

1.执行merge或pull操作,可能发生冲突
在这里插入图片描述
2.冲突解决后加入到暂存区
3.提交代码到本地仓库
4.推送到远端仓库

六、IDEA中常用Git操作

1. 基本操作一览图

在这里插入图片描述

2. git操作在IDEA中的入口

在这里插入图片描述

标签: gitee git github

本文转载自: https://blog.csdn.net/lieyingJ/article/details/138388674
版权归原作者 大道归简 所有, 如有侵权,请联系我们删除。

“git基础教程-从git基础认识到gitee配置”的评论:

还没有评论