Git笔记

Git概述

Git 是一个免费和开源的 分布式版本控制系统,旨在快速高效地处理从小型项目到大型项目的所有项目。
Git易于学习, 占用空间小,性能快如闪电。它优于 SCM 工具,如 Subversion、CVS、Perforce 和 ClearCase,具有廉价的本地分支、方便的暂存区域和多个工作流等功能。

分布式的版本控制系统出现之后,解决了集中式版本控制系统的缺陷:

1.服务器断网的情况下也可以进行开发(因为版本控制是在本地进行的)

2.每个客户端保存的也都是整个完整的项目(包含历史记录,更加安全)
在这里插入图片描述
commit:提交,将本地文件和版本信息保存到本地仓库
push:推送,将本地仓库文件和版本信息上传到远程仓库
pull:拉取,将远程仓库文件和版本信息下载到本地仓库

代码托管中心(远程库)

  • 局域网
    • GitLab
  • 互联网
    • GitHub(外网)
    • Gitee码云(国内网站)

Git安装

无脑式安装
在这里插入图片描述

Git常用命令

用户名和邮箱必须配置 (GitBush)

命令作用例子
git config --global user.name <用户名>设置用户名git config --global user.name Caihang
git config --global user.email <邮箱>设置用户邮箱git config --global user.email Caihang@qq.com
git init初始化本地库git status
git status查看本地库状态git status
git add <文件>添加至暂存区git add aa.txt
git rm --cached <文件>删除暂存区文件(工作区还是有的)git rm --cached aa.txt
git commit -m “日志信息” “文件名”提交至本地库git commit -m “first commit” “aa.txt”
git reflog / git log查看历史版本信息 /查看版本详细信息git reflog / git log
git reset --hard <版本号>穿梭版本号git reset --hard 294e668
git remote -v查看别名
git remote add <别名> <地址链接>给库起别名git remote add git-demo https://github.com/chword1232/git-demo.git
git clone <地址>克隆地址git clone git-demo https://github.com/chword1232/git-demo.git

Git分支操作

1、分支概述

什么是分支:

在版本控制过程中,同时推进多个任务,为每个任务,我们就可以创建每个任务的单独分支。使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时候,不会影响主线分支的运行。对于初学者而言,分支可以简单理解为副本,一个分支就是一个单独的副本。(分支底层其实也是指针的引用)

分支的好处:

同时并行推进多个功能开发,提高开发效率。
各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响。失败的分支删除重新开始即可。

2、分支操作

命令作用例子
git branch -v查看分支git branch -v
git branch <分支名>创建分支git branch hot-fix
git checkout <分支名>切换分支git checkout hot-fix
git merge <分支名>合并分支(把指定分支合并到当前分支上)git merge hot-fix

冲突产生的原因:
合并分支时,两个分支在同一个文件的同一个位置有两套完全不同的修改。Git无法替我们决定使用哪一个。必须人为决定新代码内容。

Git标签

在这里插入图片描述

Git团队机制

1、团队内协作

在这里插入图片描述

2、跨团队协作

在这里插入图片描述

GitHub

开始:

1、登录账号

2、创建远程仓库

在这里插入图片描述

3、连接库

在这里插入图片描述

给库起别名

命令作用例子
git remote add <别名> <地址链接>给库起别名git remote add git-demo https://github.com/chword1232/git-demo.git

在这里插入图片描述

推送本地库到远程库

命令作用例子
git push <别名> <分支>给库起别名git remote add git-demo https://github.com/chword1232/git-demo.git

1、切换到master分支

git checkout master

2、推送

git push git-demo master

等待一会儿(如果没有上传上去,可以执行 git config --global http.sslVerify “false” 断开服务连接后重新上传)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

拉取远程库到本地库中

命令作用例子
git pull<别名> <分支>拉取远程库到本地git pull git-demo master

克隆远程仓库至本地

命令作用例子
git clone <分支>克隆远程仓库至本地git clone https://github.com/chword1232/git-demo.git

克隆自动做了三件事:1、拉取代码 2、初始化本地库 3、创建别名

邀请团队

在这里插入图片描述

邀请团队外的大神

1、直接通过链接进入其中

2、点击叉子

在这里插入图片描述

3、创建Pull requests连接

在这里插入图片描述

IDEA集成Git

1、删除idea中不必要的文件

屏蔽idea工具之间上的差异
在这里插入图片描述

本来是要自己配置的,springboot帮助我们创建好了。

在这里插入图片描述

2、在idea中绑定git

在这里插入图片描述

本来是要自己修改的,springboot自动识别了本地git并且自动绑定了

3、初始化

成功后所有文件会变红(未传到暂存区)

在这里插入图片描述

4、提交至暂存区,上传到本地库

在这里插入图片描述

5、查看版本信息

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

6、创建与切换分支

在这里插入图片描述

7、合并分支

正常合并

在这里插入图片描述

冲突合并

(两个分支都进行了修改,就会冲突)

额,现在的idea自动合并了

idea颜色

颜色表示的含义
红色未添加至暂存区
绿色未添加至本地库
蓝色修改后未添加至暂存区(可直接提交至本地库)

IDEA集成GitHub

1、需要去GitHub去生成口令

在这里插入图片描述

2、在idea中登录

在这里插入图片描述

3、使用

push上传到远程库

在这里插入图片描述

pull拉取远程库

注意: push是将本地库代码推送到远程库,如果本地库代码跟远程库代码版本不一致,push的操作是会被拒绝的。也就是说,要想push成功,一定要保证本地库的版本要比远程库的版本高!因此一个成熟的程序员在动手改本地代码之前,一定会先检查下远程库跟本地代码的区别!如果本地的代码版本已经落后,切记要先pull 拉取一下远程库的代码,将本地代码更新到最新以后,然后再修改,提交,推送!
在这里插入图片描述

Gitee(码云)

码云是开源中国推出的基于Git的代码托管服务中心,网址是 https:/lgitee.com/,使用方式跟GitHub一样,而且它还是一个中文网站,如果你英文不是很好它是最好的选择。-

1、创建远程库

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

2、idea集成Gitee

在idea中下载Gittee插件

在这里插入图片描述

设置git安装位置

在这里插入图片描述

登录

在这里插入图片描述

使用

在这里插入图片描述

其他操作与Git一样

本地初始化git项目

在这里插入图片描述

远程克隆项目

在这里插入图片描述

ideal分支操作

在这里插入图片描述

Gitee复制GitHub项目

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

GitLab

局域网的托管中心

GitLab是由GitLabInc.开发,使用MIT许可证的基于网络的Git仓库管理工具,且具有wiki和 issue跟踪功能。使用Git作为代码管理工具,并在此基础上搭建起来的web服务。e
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个

红包金额最低5元

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

抵扣说明:

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

余额充值