git

git

1.使用场景

单人开发:可以记录项目代码的所有历史记录,并且能够对版本进控制

​ 历史记录:可以追溯以前所有写过的代码

​ 版本进控制:对软件的功能相关代码进行版本控制

​ 版本一增加了 空间功能 ,聊天功能

​ 版本二 增加了 说说功能(包含 空间功能 ,聊天功能)

多人协作:多个人同参与 以项目,多人之间代码协同

​ A 开发登陆注册

​ B 开发用户管理,权限管理

​ 两人如何合并代码?

git:开源世界 分享自己优秀代码

2.git介绍

git 开源的分布式的版本控制工具,解决的就是代码的 版本控制,多人协作问题

svn也是版本控制工具 svn 不是分布式的 (简单,好用,可能不是很安全(代码删除))

发明人: Linus Torvalds 在开发软件起初,倡导开源精神

linux:开发了 开源Linux的操作系统(90)

git: 05 年开发

为什么开发git?就是因为linux系统的代码原来使用其他版本控制工具(起初对Linux社区开发者 免费,05对开发者收费,惹恼Linus Torvalds ,他用了两种时间开发git 第一个版本(c语言))

3.安装

一路下一步

配置用户名,邮箱

git config --global  user.name  wangongzhuo
git config --global  user.email  wangongzhuo@163.com

查看用户名密码

$ git config -l

4.概念

工作区(工作空间):人眼睛看到的代码

版本库:git管理当前项目的所有历史记录 (暂存区 分支)

暂存区:缓存 工作空间的代码提交到版本库,必须先提交到暂存区

分支:代码带版本中保存 必须保存在分支中,master 分支是 主干分支

​ (数据库保存的数据 必须保存在表中)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0Q55IQLr-1603978936916)(git-class.assets/image-20201029111646719.png)]

5.仓库

仓库就是项目所在的一个目录

创建仓库

1.创建一个文件夹

java2006_day73_git01

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IZUcmpC7-1603978936922)(git-class.assets/image-20201029112441321.png)]

2.进入java2006_day73_git01,右键打开git bash(命令行)

image-20201029113022052

image-20201029112649462

3.初始化

一个项目的初始化只能,初始化一次,生成版本库

$ git init

image-20201029112945214

4.git add

$ git add hellogit.txt  #将工作空间的 hellogit.txt加入到暂存区
$ git add .  #将当前命令行所在工作空间下所有的文件 提交到暂存区

git commit

 git commit -m "master_v1" #将暂存区 文件提交到版本库(对应分支)
            -m 提交的描述信息

$ git status

产看当前工作空间文件的状态

红色文件 :未添加暂存区的文件

绿色问题:添加到暂存区,未添加到版本库对应分支文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-h0o0OWKZ-1603978936941)(git-class.assets/image-20201029114315893.png)]

6.远程仓库

线上服务器仓库:github gitee 自建github

本地仓库和远程仓库交互方式

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tfaTXTxM-1603978936944)(git-class.assets/image-20201029115952034.png)]

1.创建远程仓库

image-20201029141931570

2.将本地仓库和远程仓库经行关联

重点:在关联仓库之前一定要将所有工作空间的内保持到版本中,并且git stauts

关联远程仓库
git remote add origin https://gitee.com/wangongzhuo/java2006_day73_git01.git
push

保证当前工作空间所用内容保存到仓库的分支

将本地仓库的master 分支推送远程仓库的master分支

git push -u origin master

-u 需要输入用户名密码

注意:push 之前:

		 1先把工作空间保存到本地仓库

​         2.要先pull 拉取线上代码,解决冲突,提交到本地

​          3.在pull 以下(以防有人提交新的代码,有的在解决冲突)

​         4.没有冲突 push
pull

将远程仓库的内容更新到本地

确保:保证当前工作空间所用内容保存到仓库的分支

git pull origin master #将远程仓库的master分支 更新到本仓master分支 并合并

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2g41ttvY-1603978936950)(git-class.assets/image-20201029144945538.png)]

出现冲突解决

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yTb2DFVo-1603978936951)(git-class.assets/image-20201029144721392.png)]

注意:

pull 之前要将工作空间提交到本地仓库中

pull 之后如果有冲突  Merge conflict in hellogit.txt

​		要解决冲突,并提交本地仓库
clone

克隆,就是将远程所有的内容放到本地某一目录,并创建工作空间和本地仓库

主要是给新加入项目的小伙伴使用

1.新建java2006_day73_git01_back

2.在java2006_day73_git01_back中右键打开gitbash命令行

$ git clone https://gitee.com/wangongzhuo/java2006_day73_git01.git

7.分支

分支就是git 仓库中存储版本位置,一个分支可以有多个版本组成,每一个都是以节点,在节点中记录了当前分针的代码便信息

分支:可以分为 master(主干分支,默认分支) 稳定版本的代码

​ 可以自己创建dev 开发分支 开发版本的代码

查看分支列表

当前本地工作空间在那个分支,本地仓库的所有分支

$ git branch
* master  #*带当前工作空间在那个分支下(工作空间的代码和master分支代码相对应)

创建分支

注意创建支,要保持当前空间干净

就是将当前master分支所有的代码包括历史记录拷贝到 dev分支

$ git branch dev

切换分支

前提条件,要保持当前空间干净

切换分支:就是将当前工作空间的代码切换 dev分支的代码

$ git checkout dev
Switched to branch 'dev'

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KWXic9SL-1603978936952)(git-class.assets/image-20201029161456359.png)]

查看当前分支日志

git log
合并其他分支代码
$ git status
$ git checkout master  #切换到master
$ git merge dev 将dev 代码版本合并到当前分支masert

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2nz9vrDX-1603978936953)(git-class.assets/image-20201029163023678.png)]

解决冲突:

1.打开对应文件 修改(删除《《《 ====)修改业务

2.add commit

撤销当前工作空间的修改,将对应分支的代码还原工作空间

git restore hellogit.txt

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DWWaknTH-1603978936955)(git-class.assets/image-20201029164705592.png)]

8.添加忽略文件

1.在idea web工程下添加.gitignore 忽略文件

忽略targer .idea *.class *.iml 不进行版本管理

target/
.idea
*.class
*.iml

2.在工程目录下 进入git bash

初始化工程

git init

3.push gitee

9.小组间协作

添加仓库管理员

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DmC3OgCT-1603978936957)(git-class.assets/image-20201029170243303.png)]

10git Ui使用

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EgiXWfEB-1603978936959)(git-class.assets/image-20201029173707491.png)]

提交远程

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zbCEt9GA-1603978936959)(git-class.assets/image-20201029173756794.png)]

创建分支

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-q3B2jfH7-1603978936960)(git-class.assets/image-20201029174241076.png)]

合并

.idea
*.class
*.iml


2.在工程目录下 进入git bash

初始化工程

git init


3.push gitee

# 9.小组间协作

添加仓库管理员

[外链图片转存中...(img-DmC3OgCT-1603978936957)]

# 10git Ui使用

[外链图片转存中...(img-EgiXWfEB-1603978936959)]

提交远程

[外链图片转存中...(img-zbCEt9GA-1603978936959)]

创建分支

[外链图片转存中...(img-q3B2jfH7-1603978936960)]

合并

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KEw3cOjB-1603978936964)(git-class.assets/image-20201029174452298.png)]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值