git学习1

学习链接 尚硅谷 (链接: link)

引入

版本控制

在这里插入图片描述
git主要是用于团队协作
小红和小蓝各自修改代码不同的区域,合并到master分支之后就是把修改的地方合并进去

集中式和分布式版本控制

集中式问题:代码服务器的单点服务器问题
分布式:本地也可以做版本控制,每个客户端保留完整项目;远程一般是服务商也不容易挂掉
在这里插入图片描述

git工作机制

提交本地库之后就会有历史版本,eg v4版本是在v3版本之上的,所以历史版本是不能删掉的

  • 提交历史版本之后就可以push到远程库;
    在这里插入图片描述

代码托管中心

代码托管中心一般就是我们认为的远程库

Git常用命令

🩷🩷🩷git中table也是可以自动补全的

在这里插入图片描述

设置用户签名

前面两个设置好用户签名,用于提交代码,==签名的作用就是为了区分不同操作者身份
设置好用户签名之后,在本地的user账号里面的.gitconfig可以看到信息,

  • 这个和将来登录github或者其他远程库的账号没有任何关系

初始化本地库

git init:初始化本地库之后才可以管理当前的文档
ll命令:展示所有内容

查看库状态

在这里插入图片描述
vim中【先按esc】yy是复制,p是粘贴 :wq是保存
bash中linux命令通用
里面有文件没有git add进入暂存区就会红色提示

add和提交

中间那个965c6al]是提交的版本号在这里插入图片描述
使用git reflog可以查看提交版本
git log可以看到详细提交信息,包括用户签名

  • 修改之后就可以使用git status查看状态,会发现有改变,然后再add【会变绿】,再git commit,然后使用git log或者git relog就很方便

版本穿梭

版本穿梭会影响工作区,谨慎使用
如果需要恢复到之前的版本就是用版本穿梭,
具体操作:git reflog查看需要穿梭的版本好,然后使用git reset --hard 版本号,然后指针就会指向恢复的版本
在这里插入图片描述
前面提到的指针就是HEAD文件中记录的,里面会告诉我当前是指向哪个分支【例如master】;要寻找具体是哪个版本号在ref里面找HEAD里面的分支的名字,里面记录的就是版本号;
在这里插入图片描述

git分支操作

分支定义

定义:可以简单理解分支为一个单独的copy;开发完之后再合并进去
在这里插入图片描述
示意图:master也是一个分支,或者称为主线分支。
在这里插入图片描述

分支好处

在这里插入图片描述

分支操作

在这里插入图片描述
注意对话框,最右边显示的就是当前的分支
在这里插入图片描述

查看分支

git branch -v用于查看当前有几个分支,例如下面这个只有一个分支master
在这里插入图片描述

创建分支

git branch 分支名:就可以创建一个新的分支 例如起名为hot-fix

切换分支

git checkout 分支名:在这里插入图片描述
然后在这个分支下面修改文件,然后add,然后commit

分支合并💕✨🩷

需要回到master分支上【git checkout master】,然后git merge hot-hit,就表示将hot-fix分支合并到master分支上;如果弄反了,没有回到master分支,而是还在hot-fix分支上,那就是自己合并自己

  • 一定要切回被合并的主干分支上
  • 下面这个图就表示合并成功,master合并的时候就被改了
    在这里插入图片描述

合并冲突

例如:如果master分支和hot-fix分支都修改了同一个地方,就不会自动合并;

  • 下面黄框表示合并没有成功,还在合并
    在这里插入图片描述
    这时进入提醒conflict的文件里面用cat,会自动显示冲突的地方;人为修改之后再add[ git add hello.txt],再commit,注意,这个时候commit的时候不用加文件名,会自动合并刚刚修改之后的
    在这里插入图片描述
    这个就是加了文档名和不加文档名的区别。加了文档名会报错,不知道合并哪一个,不加文档名不报错,直接合并刚刚人工手动修改的那个
  • 注意!这里修改的还是master分支上面的,刚刚就是站在master分支角度合并出错去修改的,那么hot-fix分支并不会改变
    在这里插入图片描述

git团队协作

团队内协作

已有本地库,如果再使用pull拉下来的话,本地库会更新显示别人的修改
在这里插入图片描述

跨团队协作

远程库2首先fork【也就是复制,github上的fork就是这个意思】,开发好之后 pull ,远程库1审核后可以merge
在这里插入图片描述

Github远程库

在这里插入图片描述

创建远程库和别名

创造别名:因为远程的链接有点长,起个名字
git remote -v 查看跟当前本地库链接的远程库有哪些
git remote add 别名 远程地址

push推送

git push 刚刚起的别名 分支 可能因为网络原因失败
最好远程和本地的名字是一样的

拉取远程库到本地库

本地库和远程库不是同步的了,就需要拉取到本地然后更新修改
git pull 别名 远程端的分支名字

克隆远程库

git clone github代码链接


看到27,后面暂时用不到

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值