Git笔记

1.Git概念

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

什么是版本控制?
版本控制是一种记录一个或若干文件内容变化,例如应用在代码管理就是可以帮助你管理每年写的代码。最典型的例子就是我们应该有写PPT的经历,写完了后给领导看改了一版,然后再评审会上过后又改了一版,然后再给大领导看又改了一版,这就3版了。通常我们会保留改前的版本以备改错了好还原。这样下来做完的话电脑上存一4个版本了,这个还是改的不多的情况,如果改的多可能有10几个版本,写一个材料就有10个文件放在电脑里,那么多人写一个大型项目是不是有很多文件,很多上版本,这样人为管理很难。所以需要有一个软件来管理不同的版,实现这样功能的软件就是版本控制系统。

版本管理有几个好处理:
1、回退–如果现在自己改过了可以马上回来前一个版本重新写过
2、协作–多个人开发同一个项目方便代码管理

集中和分布两个版本管理的优缺点
集中的优点是:
每个人都可以看到其他人正在做什么,管理员可以轻松掌控开发者的权限,集中管理比各自己在自己电脑管理版本方便
集中的缺点是:单点故障

分布式版本控制:客户端并不只提取最新版本的文件快照,而是把代码仓库完整的镜像下来。每一台客户端都有一份完整的代码库,而不是最新版本。并且可以上传或下载远端仓库代码。GitHub就是一个非常有名的远端客户端

本地结构:
在这里插入图片描述

团队内协作
在这里插入图片描述

跨团队协作
在这里插入图片描述

初始化本地仓库:
1.创建文件夹
Gitresp
2.打开终端
查看版本
git -version
清屏
clear
设置签名
git config --global user.name

Git 常用命令
添加文件:add 提交文件commit

展示:先创建一个文件
touch test.txt
将文件添加暂存区
git add test.txt
将暂存区内容提交到仓库
git commit -m “备注”

status 查看暂存区内容

创建一个文件查看状态
在这里插入图片描述
然后将Demo.txt通过 add 提交到暂存区,再查看状态
在这里插入图片描述
再用commit提交到本地库
在这里插入图片描述
修改Demo.txt再查看
在这里插入图片描述
重新添加至暂存区:
在这里插入图片描述
提交后再查看状态
在这里插入图片描述

git log

从近到远展示提交
在这里插入图片描述
key:(索引)cf91f0a0bd261c28ed703af7a18e82001238c16c
value:历史记录对应的具体内容

当历史记录过多的时候,查看日志的时候,有分页的
效果,一页展示不下:下一页:空格 上一页:b
到尾页了,显示END
退出:q

日志展示方式:
【1】方式1:git log -->分页
【2】方式2: git log --pretty=oneline
在这里插入图片描述
【3】方式3:git log --oneline
在这里插入图片描述
【4】方式4:git reflow
多了信息:HEAD@{数字}
数字含义:回到当这个历史版本要走几步
在这里插入图片描述

reset命令

前进版本或后退版本
在这里插入图片描述
【1】hard参数
git reset --hard 【索引】
工作区 - 暂存区 --本地库 同步动

【2】mixed 参数
本地库指针移动的同时暂存区同步动,工作区不动
【3】soft 参数
本库指针移动,暂存区和工作区不动

以后用的多就是第1种

删除文件恢复

【1】新建一个Test2.txt文件
【2】add到暂存区
【3】再提交到本地库commit
在这里插入图片描述

【4】删除工作中的Test2.txt

【5】将删除操作同步到暂存区
【6】将删除操作同步到本地库
在这里插入图片描述
【7】通过 reset 找回删除的文件
在这里插入图片描述

找回存暂存区删除的内容

【1】删除工作区数据
【2】同步到缓存区
【3】后悔了还是用 reset hard回复

diff 比对文件差异

【1】先创建一个文件,添加到暂存区,再交到本地库
【2】更改工作区中test3.txt中内容,增加内容
导致:工作区和暂存区 不一致比对找不同:
git diff test3.txt
将工作区中的文件和暂存区的文件进行比较
多个文件(所有文件)比对:git diff

暂存区与本地库比对:
git diff HEAD test3.txt

分支

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

通过一张图展示分支:
在这里插入图片描述

分支的好处:
多个分支可以并行开发,互相不影响,提高开发效率
如果有一个分支功能开发失败,直接删除分就可以,不会对其他分支产生影响
【1】在工作区创建一个test4.txt文件,然后提交到暂存区和本地库
【2】查看分支
git branch -v

【3】创建分支
git branch branch01
在这里插入图片描述
*号表示当前分支
【4】切换分支
git checkout branch01

【1】进入branch01,添加内容
git checkout branch01
git add test4.txt
git commit -m “add test4.txt branch01”

【2】切换到主分到
git checkout master

同一个文件在两个分支修改互不影响

【3】01合并到主分支
1.git checkout master
2.git merge branch01
在这里插入图片描述
合并出现了冲突
什么时候会出现冲突?
在同一个文件的同一个位置,才会出现冲突问题
abc
<<<<<<< HEAD ##这个是当前分支修改的内容
master add something

add from branch01 ##合并过来的内容

branch01

解决冲突:
公司内容商议或个人解决,留下想要的即可
然后提交暂存区和本地库
在这里插入图片描述
git add后看git status提示还在冲突中

git commit -m “解决冲突” ##不可以带文件名,不然会报错

在这里插入图片描述

Github一起使用

【1】初始化本地库
在这里插入图片描述

git 提供本的取别名的方法
–查看别名
git remote add origin https://github.com/tonyjync/Gitresp2.git

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值