Git 本地库 远程库 学习笔记

Git:在本地库进行控制

Git是一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型的项目

在这里插入图片描述

在这里插入图片描述

代码操作(和Linux相同)

cat 文件名

查看文件内容

git --version

查看git安装版本

clear

清屏

设置签名

git config --global user.name “xxx” 设置用户名

git config --global user.email “64901870@qq.com” 设置用户邮箱

本地仓库的初始化操作

文件要放在本地仓库目录中才能够进行管理

到本地仓库文件夹中输入git init 进行初始化

复制操作

在终端中选中就是复制了

粘贴操作

右键点击paste

add命令和commit命令

在这里插入图片描述

每一次对仓库文件进行修改都要进行 add 和commit 提交记录

先在本地仓库目录中新建一个文件demo.txt , 然后该目录打开Git Bash Here

添加:将文件提交到暂存区

git add Demo.txt 进行添加

添加注释提交:将暂存区的内容提交到本地库

git commit -m “这是我提交的第一个文件 Demo.txt” Demo.txt

(-m:意思是message)

status命令

git status

查看的是工作区和暂存区的状态

log命令

git log

查看提交的,显示从最近到最远的日志

如果历史记录太长了,会显示冒号,有分屏效果,

点击空格 查看下一页

点击 b 查看上一页

点击 q 退出

到尾页显示END

日志展示命令

1:git log 分页

2:git log --pretty=online 简洁展示

3: git log --online 更加简洁展示

4:git reflog 展示,多了HEAD@{数字} 这个数字的含义:指针回到当前版本需要走多少步

reset命令
hard参数

git reset --hard 索引(索引:通过 git reflog 可以查看索引)

前进或者后退历史版本

本地库的指针移动的同时,重置暂存区,重置工作区

mixed参数

git reset --mixed 索引

本地库的指针移动的同时,重置暂存区,但是工作区不动

soft参数

本地库的指针移动的时候,暂存区和工作区都不动

总结:常用 hard参数

删除文件

当 test.txt 存在于本地库目录中时

删除工作区中的test.txt

rm test.txt

将删除操作同步到暂存区

add操作

git add test.txt

删除操作同步到暂存区后回退

​ 如果删除操作同步到暂存区后想要回退恢复暂存区的数据,则直接利用索引滚回到当前这一步就可以了

git reset --hard 索引

将删除操作同步到本地库

commit操作

git commit -m “删除test.txt同步到本地库” test.txt

找回本地库中删除的文件

git reset --hard 索引

实际上就是将历史版本切换到刚才的版本即可

diff命令
git diff 文件名

将工作区中的文件和暂存区中文件进行比较

git diff

目录下 比较工作区中和暂存区中 所有文件的差异

git diff HEAD text.txt

HEAD指向的本地库暂存区 进行比较

git diff 索引 text.txt

索引指向的本地库历史版本暂存区 进行比较

分支
什么是分支

在版本控制过程中,使用多条线同时推进多个任务。这里面说的多条线,就是多个分支

通过一张图展示分支

在这里插入图片描述

开辟功能

新的独立功能需要开辟一个新的分支,当开辟一个新的分支时,会对原来的master进行复制,然后再在这个复制的master上进行编写

功能编写好后,再和原master进行合并

Debug

Debug的时候,会在原来节点复制一份节点,在复制的这份节点上进行Debug

Debug完后再合并原master

分支的好处

同时多个分支可以并行开发,互相不耽误,互相不影响,提高开发效率

如果有一个分支功能开发失败,直接删除这个分支就可以了,不会对其他分支产生任何影响。

分支命令

当前分支是看不到其他分支内容的,如果要查看需要checkout切换到该分支

查看分支状态

git branch -v

分支界面中 * 代表当前在哪一个分支上

创建分支

git branch 分支名字

切换分支

git checkout 分支名字

合并分支

git merge 要合并的分支名字

合并后要进行 add commit 操作

注意!!commit时不用加文件名否则出错!! git commit -m "xxx"

合并冲突问题

什么时候会出现冲突问题?在同一个文件的同一个位置修改

可以合并 但是会同时出现两部分内容

解决合并冲突问题

内部商量,人为决定,手动删除。

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

在这里插入图片描述

多公司合作

在这里插入图片描述

Git查看远程库地址别名记录

git remote -v

添加别名

git remote add 别名 远程库地址

添加别名后 通过别名就可以代替远程库地址

推送至远程库

git push 别名/地址 要推送的分支(选择一个分支即可)

然后输入密码验证就可以推送上去

克隆操作

git clone 克隆地址

1:可以帮我们初始化本地库

2:将远程库内容完整克隆到本地

3:替我们创建远程库的别名

邀请进入团队

管理者:在Github 自己的仓库里找到setting 找到message access 然后输入被邀请者用户名会得到一个邀请链接

邀请者:进入邀请链接接受请求,然后就可以push推送到远程库里面去

pull操作:fetch 和 merge
拉取操作
pull操作,相当于 fetch + merge

git fetch 别名 分支

将远程库的内容下载到本地,但是并没有更新到工作区里面,所以工作区内容不变

检查

抓取后可以去远程库里面看看内容是否有问题

git checkout 远程库别名/分支名:切换分支到远程库分支

cat 文件名:查看

进行合并

1:

git merge 远程库别名/远程库分支名

合并前要在切换到原分支下进行merge操作

2:

远程库的拉取可以直接利用pull命令来完成

git pull 远程库别名 分支名

方法一比较慎重 方法二直接一键拉取合并

远程推送冲突问题

当推送失败,发现冲突

在冲突的情况下,应该先拉取下来,然后人为修改冲突,然后再推送到远程服务器。

人为修改冲突后,会显示merge冲突的标志,需要再commit的时候不输入文件名

IDEA集成Git

初始化本地库
先在IDEA中设置好Git路径

在这里插入图片描述

设置将工作区作为本地仓库

在这里插入图片描述

add操作

在这里插入图片描述

commit操作

在这里插入图片描述### 远程库拉取 推送

注意!!先在远程库进行拉取,检查是否冲突,再一并推送上去。

1:在代码目录下Git Bash操作
拉取操作

git pull 别名 分支 --allow-unrelated-histories

参数:告诉git允许不相关历史合并

推送操作

git push -u 别名 master -f

2:在IDEA中拉取 推送
先拉取到本地库

在这里插入图片描述

add commit操作后,进行Push操作

在这里插入图片描述

commit的时候可以直接push,但是,为了防止出现冲突,建议先拉取到本地库commit没有冲突后再进行push。

利用IDEA克隆远程仓库到本地

在这里插入图片描述

克隆到本地后

这个目录既变成了一个本地仓库,又变成了工作空间

IDEA解决冲突

比较简单 比较智能 merge就完了

避免冲突

1:团队开发的时候避免在一个文件中改代码

2:在修改一个文件前,在push之前,先pull操作

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值