Git学习总结

Git 是一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型的各种项目。
Git 易于学习,占地面积小,性能极快。 它具有廉价的本地库,方便的暂存区域和多个工作流分支等特性。其性能优于 Subversion、CVS、Perforce 和 ClearCase 等版本控制工具。

下载Git

官网地址: https://git-scm.com/
安装教程:教程参考
安装完成

Git基本操作

git操作分为三个区域:工作空间—暂存区-----本地库
在这里插入图片描述
在这里插入图片描述

1.初始化本地库:
在所需要初始化项目的文件夹中右键Git Bash,即可进入
在这里插入图片描述
在这里插入图片描述
输入 git init 初始化完成
在这里插入图片描述

2.查看状态: git status
在这里插入图片描述
在这里插入图片描述
通用Linux命令:
insert-----》hello git !! —》ESC—》yy----》:wq------》Ctrl+c

在这里插入图片描述
在这里插入图片描述
再次查看状态:显示未提交到暂存区
在这里插入图片描述
使用git add 文件名
在这里插入图片描述
显示文本数据:cat hello.txt
在这里插入图片描述
修改文件后,再次查看状态:
在这里插入图片描述
git status
在这里插入图片描述
再次提交到暂存区:git add hello.txt, 再次查看状态git status
在这里插入图片描述
使用git rm --cached 文件名 移除添加到暂存区的文件
查看详细 git status
在这里插入图片描述

先要使用git add 文件名 将工作空间的文件添加到暂存区,再将暂存区文件提交到本地库 :git commit -m “版本信息” 文件名
查看版本日志:git reflog
查看详细日志:git log
在这里插入图片描述
再次修改工作空间中的文本 vim hello.txt
在这里插入图片描述
查看状态:git status
在这里插入图片描述
提交到暂存区git add 文件名,查看状态git status:

在这里插入图片描述
再次提交到本地库git commit -m “版本信息” 文件名,查看本地库版本信息git reflog
git log 会出现之前所有版本的信息,但是Head ->master 指向最新的版本:

在这里插入图片描述
git的版本是通过指针来进行控制的 Head ->master!
版本替换:使得Head ->master 指向其他版本,实现版本替换
先通过git reflog查看版本号
在这里插入图片描述

再使用git reset --hard 版本号 #替换版本
复制键Ctrl+INS 粘贴键SHIFT+INS
再次查看版本信息:git reflog 看到指针移动到之前的版本

在这里插入图片描述
使用cat hello.txt 查看文件
在这里插入图片描述
总结基本命令:

新建文件夹:右键进入git Bash命令控制台
git init #初始化工作空间
git status #查看工作空间状态
vim 文件名 #vim hello.txt      与Linux命令一致
进入vim模式的基本命令:INSERT--编辑---ESC---yy(多行复制)--p(粘贴)---:wq(保存退出)
使用cat 文件名 #cat hello.txt 查看文件
再次查看工作空间状态:git status
提交到暂存区: git add 文件名
再次查看工作空间状态:git status
使用git rm --cached 文件名  移除添加到暂存区的文件
再次查看工作空间状态:git status
提交到暂存区: git add 文件名
提交到本地库: git commit -m "版本信息" 文件名
git reflog #查看版本信息
git log  #查看详细版本信息
通过git reflog 查看版本号
使用git reset --hard 版本号  使得版本替换
git reflog #再次查看版本信息

Git的分支操作

什么是分支
在版本控制过程中,同时推进多个任务,为每个任务,我们就可以创建每个任务的单独
分支。使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时
候,不会影响主线分支的运行。对于初学者而言,分支可以简单理解为副本,一个分支就是
一个单独的副本。(分支底层其实也是指针的引用)
分支的好处
同时并行推进多个功能开发,提高开发效率。
各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响。失败
的分支删除重新开始即可。

分支基本操作:
在这里插入图片描述

查看当前分支 git branch -v 只有一个master分支
在这里插入图片描述
创建分支:git branch 分支名
查看当前分支,分支依然在master上
在这里插入图片描述
切换分支 : git checkout 分支名
查看当前分支 git branch -v 分支转移到hot-fix上在这里插入图片描述
cat hello.txt 查看当前分支文件
在这里插入图片描述
git reflog 查看当前分支本地库信息
在这里插入图片描述
修改当前分支信息
![在这里插入图片描述

然后提交到暂存区 git add文件名
提交到本地库:git commit -m “版本信息” 文件名

切换到主分支 master :git checkout master
在这里插入图片描述
查看文本信息:未被修改
在这里插入图片描述
合并分支:将hot-fix分支合并到master分支上,先将分支转移到master上
git merge 分支名
在这里插入图片描述
查看工作区状态:git status,
在这里插入图片描述
以及文本信息:cat 文件名
在这里插入图片描述
合并成功!!

Git的团队协作

团队内协作流程:
在这里插入图片描述
跨团队协作流程:
在这里插入图片描述

Git—GitHub的基本操作

方法一(不推荐)
将本地项目上传到Github

首先你需要一个github账号,所有还没有的话先去注册吧!

https://github.com/

我们使用git需要先安装git工具,这里给出下载地址,下载后一路直接安装即可:

https://git-for-windows.github.io/

1.进入Github首页,点击New repository新建一个项目

2.填写相应信息后点击create即可

Repository name: 仓库名称

Description(可选): 仓库描述介绍

Public, Private : 仓库权限(公开共享,私有或指定合作者)

Initialize this repository with a README: 添加一个README.md

gitignore: 不需要进行版本管理的仓库类型,对应生成文件.gitignore

license: 证书类型,对应生成文件LICENSE

4.点击code会出现一个地址,copy这个地址备用。

在这里插入图片描述

5.接下来就到本地操作了,首先右键你的项目,如果你之前安装git成功的话,右键会出现两个新选项,分别为Git Gui Here,Git Bash Here,这里我们选择Git Bash Here,进入如下界面,即为我的项目名。

6.接下来输入如下代码(关键步骤),把github上面的仓库克隆到本地

git clone https://github.com/CKTim/BlueTooth.git(https://github.com/CKTim/BlueTooth.git替换成你之前复制的地址)

7.这个步骤以后你的本地项目文件夹下面就会多出个文件夹,该文件夹名即为你github上面的项目名,如图我多出了个Test文件夹,我们把本地项目文件夹下的所有文件(除了新多出的那个文件夹不用),其余都复制到那个新多出的文件夹下,

8.接着继续输入命令 cd Test,进入Test文件夹

9.接下来依次输入以下代码即可完成其他剩余操作:

git add . (注:别忘记后面的.,此操作是把Test文件夹下面的文件都添加进来)

git commit -m ”提交信息” (注:“提交信息”里面换成你需要,如“first commit”)

git push -u origin main(注:此操作目的是把本地仓库push到github上面,此步骤需要你输入帐号和密码)

GitHub 网址:https://github.com/
方法二(推荐)
创建远程仓库:
在这里插入图片描述
在这里插入图片描述
点击创建!!

远程仓库基本命令:
在这里插入图片描述
在这里插入图片描述
上传项目时,先要初始化项目 git init 在与项目同一级初始化,不要进如项目文件夹内
再git add 项目名 上传到暂存区
再git commit -m “版本信息” 文件名
为远程仓库取别名:git remote add 别名 远程地址
在这里插入图片描述
将本地库的文件推送到远程仓库:git push 别名 分支名
在这里插入图片描述
上传成功
在这里插入图片描述
拉取远程库的文件到本地库:git pull 远程仓库别名 远程分支名
修改远程库文件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

克隆远程仓库到本地
1)基本语法
git clone 远程地址
新建文件夹,在里面打开git Bash
在这里插入图片描述
在这里插入图片描述
clone 会做如下操作。1、拉取代码。2、初始化本地仓库。3、创建别名

邀请加入团队:
选择邀请合作者
在这里插入图片描述

在这里插入图片描述
邀请好后,队友就可以对远程仓库执行clone ,push,pull等操作

SSH 免密登录

我们可以看到远程仓库中还有一个 SSH 的地址,因此我们也可以使用 SSH 进行访问。
在这里插入图片描述

--进入当前用户的家目录
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master)
$ cd
--删除.ssh 目录
Layne@LAPTOP-Layne MINGW64 ~
$ rm -rvf .ssh
removed '.ssh/known_hosts'
removed directory '.ssh'
--运行命令生成.ssh 秘钥目录[注意:这里-C 这个参数是大写的 C]
Layne@LAPTOP-Layne MINGW64 ~
$ ssh-keygen -t rsa -C atguiguyueyue@aliyun.com(邮箱号)
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/Layne/.ssh/id_rsa):
Created directory '/c/Users/Layne/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/Layne/.ssh/id_rsa.
Your public key has been saved in /c/Users/Layne/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:7CPfRLITKcYDhaqpEDeok7Atvwh2reRmpxxOC6dkY44
atguiguyueyue@aliyun.com
The key's randomart image is:
+---[RSA 2048]----+
| .. |
| .. |
| . .. |
|+ + o . . |
|oO . = S . |
|X . .. + = |
|+@ * .. = . |
|X.&o+. o = |
|Eo+Oo . . |
+----[SHA256]-----+
--进入.ssh 目录查看文件列表
Layne@LAPTOP-Layne MINGW64 ~
$ cd .ssh
Layne@LAPTOP-Layne MINGW64 ~/.ssh
$ ll -a
total 21
drwxr-xr-x 1 Layne 197609 0 1125 19:27 ./
drwxr-xr-x 1 Layne 197609 0 1125 19:27 ../
-rw-r--r-- 1 Layne 197609 1679 1125 19:27 id_rsa
-rw-r--r-- 1 Layne 197609 406 1125 19:27 id_rsa.pub
--查看 id_rsa.pub 文件内容
Layne@LAPTOP-Layne MINGW64 ~/.ssh
$ cat id_rsa.pub
ssh-rsa
AAAAB3NzaC1yc2EAAAADAQABAAABAQDRXRsk9Ohtg1AXLltsuNRAGBsx3ypE1O1Rkdzpm
l1woa6y6G62lZri3XtCH0F7GQvnMvQtPISJFXXWo+jFHZmqYQa/6kOIMv2sszcoj2Qtwl
lGXTPn/4T2h/cHjSHfc+ks8OYP7OWOOefpOCbYY/7DWYrl89k7nQlfd+A1FV/vQmcsa1L
P5ihqjpjms2CoUUen8kZHbjwHBAHQHWRE+Vc371MG/dwINvCi8n7ibI86o2k0dW0+8SL+
svPV/Y0G9m+RAqgec8b9U6DcSSAMH5uq4UWfnAcUNagb/aJQLytrH0pLa8nMv3XdSGNNo
AGBFeW2+K81XrmkP27FrLI6lDef atguiguyueyue@aliyun.com

复制 id_rsa.pub 文件内容,登录 GitHub,点击用户头像→Settings→SSH and GPG keys
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
然后测试:git clone ssh远程地址
在这里插入图片描述

在这里插入图片描述
完成免密下载!!

上传到远程仓库步骤:
1.初始化项目 git init
2.上传到暂存区 git add 文件名
3.上传到本地库 git commit -m “版本信息” 文件名
4.在gitHub上创建远程仓库
5.为远程仓库取别名:git remote add 别名 远程地址
6.将本地库的文件推送到远程仓库:git push 别名 分支名
7.爬取远程仓库文件: git pull 远程仓库别名 远程分支名
8.克隆远程仓库文件 : git clone 远程地址
9.设置SSH免密登录

IDEA集成Git

第一步:创建忽略规则文件 xxxx.ignore(前缀名随便起,建议是 git.ignore)
这个文件的存放位置原则上在哪里都可以,为了便于让~/.gitconfig 文件引用,建议也放在用
户家目录下
git.ignore 文件模版内容如下:

# Compiled class file
*.class
# Log file
*.log
# BlueJ files
*.ctxt
# Mobile Tools for Java (J2ME)
.mtj.tmp/
# Package Files #
*.jar
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar
# virtual machine crash logs, see
http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
.classpath
.project
.settings
target
.idea
*.iml

2)在.gitconfig 文件中引用忽略配置文件(此文件在 Windows 的家目录中)

[user]
name = Layne
email = Layne@atguigu.com
[core]
excludesfile = C:/Users/asus/git.ignore
注意:这里要使用“正斜线(/)”,不要使用“反斜线(\)”

在idea中创建一个项目:
在这里插入图片描述
在idea中添加git:
在这里插入图片描述
初始化项目:
在这里插入图片描述
在这里插入图片描述
添加到暂存区:

在这里插入图片描述

添加到本地库:
在这里插入图片描述

在这里插入图片描述
版本切换:
修改代码:
在这里插入图片描述
添加暂存区:
在这里插入图片描述
添加到本地库:
在这里插入图片描述

查看本地库版本信息:
在这里插入图片描述

切换版本:
在这里插入图片描述
在这里插入图片描述
创建分支:
在这里插入图片描述
在这里插入图片描述
切换分支:
在这里插入图片描述

分支合并:
修改hot-fix分支代码,提交到本地库
切换到master分支
点击合并

在这里插入图片描述
合并成功!!

修改hot-fix分支代码,提交到本地库
修改master分支代码提交到本地库
合并,会出现代码冲突
在这里插入图片描述
在这里插入图片描述
手动选择:
在这里插入图片描述

IDEA集成GitHub

在这里插入图片描述

在这里插入图片描述
使用口令登录:
在这里插入图片描述
打开github:
在这里插入图片描述
生成token:
在这里插入图片描述
分享项目到github:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
分享成功!!
修改代码,提交到本地库,再提交到远程库:
点击push:
在这里插入图片描述
或者:
在这里插入图片描述
使用ssh提交
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
push 是将本地库代码推送到远程库,如果本地库代码跟远程库代码版本不一致,
push 的操作是会被拒绝的。也就是说,要想 push 成功,一定要保证本地库的版本要比远程库的版本高!因此一个成熟的程序员在动手改本地代码之前,一定会先检查下远程库跟本地代码的区别!如果本地的代码版本已经落后,切记要先 pull 拉取一下远程库的代码,将本地代码更新到最新以后,然后再修改,提交,推送!

pull 拉取远程库代码到本地库
修改远程库代码
在这里插入图片描述
在这里插入图片描述
注意:pull 是拉取远端仓库代码到本地,如果远程库代码和本地库代码不一致,会自动
合并,如果自动合并失败,还会涉及到手动解决冲突的问题。

clone 克隆远程库到本地
在这里插入图片描述
复制连接,选择文件地址
在这里插入图片描述

idea集成Gitee码云

众所周知,GitHub 服务器在国外,使用 GitHub 作为项目托管网站,如果网速不好的话,严重影响使用体验,甚至会出现登录不上的情况。针对这个情况,大家也可以使用国内的项目托管网站-码云。
码云是开源中国推出的基于 Git 的代码托管服务中心,网址是 https://gitee.com/ ,使用
方式跟 GitHub 一样,而且它还是一个中文网站,如果你英文不是很好它是最好的选择。
创建远程库:
在这里插入图片描述
在这里插入图片描述

安装Gitee码云插件:
在这里插入图片描述
重启idea

添加账号:输入邮箱和密码
在这里插入图片描述
分享到gitee
在这里插入图片描述
将本地项目push到远程仓库
将项目提交到本地库:
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
修改远程库代码,将远程库代码拉取到本地库:
在这里插入图片描述
远程仓库克隆:
在这里插入图片描述

gitHub导入gitee

在这里插入图片描述
在这里插入图片描述
同步github项目:
在这里插入图片描述

自建代码托管平台-GitLab

GitLab 简介
GitLab 是由 GitLabInc.开发,使用 MIT 许可证的基于网络的 Git 仓库管理工具,且具有
wiki 和 issue 跟踪功能。使用 Git 作为代码管理工具,并在此基础上搭建起来的 web 服务。
GitLab 由乌克兰程序员 DmitriyZaporozhets 和 ValerySizov 开发,它使用 Ruby 语言写
成。后来,一些部分用 Go 语言重写。截止 2018 年 5 月,该公司约有 290 名团队成员,以及 2000 多名开源贡献者。GitLab 被 IBM,Sony,JülichResearchCenter,NASA,Alibaba,Invincea,O’ReillyMedia,Leibniz-Rechenzentrum(LRZ),CERN,SpaceX 等组织使用。
10.2 GitLab 官网地址
官网地址:https://about.gitlab.com/
安装说明:https://about.gitlab.com/installation/

idea安装gitlab插件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
其他操作和gitee相同!!!

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值