心心相印 → 印贼作父 → 父相伤害 → 害想咋滴
一篇文章让你0基础精通git,害想咋滴?(白嫖有罪,记得点赞)

不详细记得叫人打我
不详细一定要叫人打我
不详细千万记得叫人打我
在这里插入图片描述


文章目录

  • 一、Git安装
    • 1.1、Git 的优势
    • 1.2、下载安装Git
  • 二、Git基本工作流程
    • 2.1、工作区
    • 2.2、本地库和远程库
  • 三、Git 命令行操作
    • Git常用命令
    • 3.1、本地库初始化
    • 3.2、设置签名
    • 3.3、查看文件提交到暂存区状态
    • 3.4、提交文件到暂存区
    • 3.5、提交文件到本地库
    • 3.6、修改文件到本地库
    • 3.7、查看文件修改内容和时间
    • 3.7、查看提交历史
    • 3.8、历史版本前进与回退
    • 3.9、reset 命令的三个参数对比
    • 3.10、删除操作
    • 3.11、找回本地库已删除文件
    • 3.12、比较文件差异
    • 3.12、三个常用的撤销命令
    • 3.13、文件重新命名
  • 四、分支管理
    • 4.1、分支简介
    • 4.2、分支操作
      • 4.2.1、查看所有分支
      • 4.2.2、新增分支
      • 4.2.3、重新命名分支
      • 4.2.4、切换分支
      • 4.2.5、合并分支
      • 4.2.6、合并分支冲突解决
      • 4.2.7、删除分支
      • 4.2.8、恢复分支
      • 4.2.9、分支应用场景模拟
  • 五、 Git基本原理
    • 5.1、哈希
    • 5.2、Git 保存版本的机制
      • 5.2.1 集中式版本控制工具的文件管理机制
      • 5.2.2 Git 的文件管理机制
      • 5.2.3、 Git 文件管理机制细节
    • 5.3、Git 分支管理机制
  • 六、Git & GitHub团队协作
    • 6.1、团队内协作
      • 项目经理创建远程仓库:
      • 项目经理创建本地仓库
      • 项目经理为远程仓库配置别名与其对应的URL
      • 项目经理推送本地仓库到远程仓库
      • 成员克隆远程仓库到本地
      • 项目经理邀请成员加入团队
      • 成员推送内容到远程库
      • 项目经理更新成员提交的内容
    • 6.2 深入远程跟踪分支
      • 远程跟踪分支
      • git pull和git fetch的区别:
      • 删除远程分支
    • 6.3、远程协作冲突
    • 6.4、团队外协作
  • 七、Git中.gitignore的配置语法


一、Git安装

1.1、Git 的优势

Git是先进的分布式版本控制系统,而Github是常用的Git代码托管中心。

  1. 大部分操作在本地完成,不需要联网
  2. 完整性保证
  3. 尽可能添加数据而不是删除或修改数据
  4. 分支操作非常快捷流畅
  5. 与Linux 命令全面兼容

1.2、下载安装Git

(Git命令的学习推荐网站:https://www.softwhy.com/article-8488-1.html)
下载Git 官方地址为:https://git-scm.com/download/win
在这里插入图片描述

2、下载完之后,双击安装
在这里插入图片描述

3、选择安装目录
在这里插入图片描述

4、选择组件
在这里插入图片描述

5、加入开始菜单目录名设置
在这里插入图片描述

6、选择使用命令行环境
在这里插入图片描述

7、以下三步默认,直接点击下一步
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

9、检验是否安装成功
回到电脑桌面,鼠标右击如果看到有两个git单词则安装成功
在这里插入图片描述
也可以在命令窗口输入git命令
在这里插入图片描述


二、Git基本工作流程

2.1、工作区

1、Git不联网下的三个工作区域
在这里插入图片描述

2、Git 和代码托管中心

代码托管中心的任务:维护远程库

局域网环境开发:大公司一般有GitLab 服务器

外网环境下: GitHub(外国服务器,访问稍慢)
码云(国内服务器,访问较快)


2.2、本地库和远程库

1、公司团队内部协作
在这里插入图片描述

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


三、Git 命令行操作

在使用Bash命令窗口的时候,讲两个细节:

  1. Liunx命令在Bash里面通用
  2. 在Bash里面想复制东西,直接鼠标选中内容,Bash默认就执行了 复制
  3. Git只会增加版本记录,不会删除,哪怕本地库做了删除操作都会增加版本记录。
    所以即便是后退到了一开始的版本,最终修改后的版本也会存在,可以随便进、退。

在这里插入图片描述

Git常用命令

3.1、本地库初始化

本地库初始化(创建本地库)

命令:git init
效果:
在这里插入图片描述
执行git init之后就创建了工作区和本地库:
在这里插入图片描述
在这里插入图片描述


3.2、设置签名

Git安装之后需要进行一些签名基本信息设置

作用:区分不同开发人员的身份
辨析:这里设置的签名和登录远程库(代码托管中心)的账号、密码没有任何关
系。
设置签名有两种方式:一种是为单个仓库单独设置,这种方式只针对单个仓库有效;另一种是全局配置,采用这种方式配置后,所有仓库都有效。如果对两种方式都进行了配置,那么会优先使用单个仓库配置方式的配置信息。

项目级别(仓库级别)签名:仅在当前本地库范围内有效
a、设置用户名:git config user.name [用户名]
b、设置用户邮箱:git config user.email [邮箱]
c、取消设置用户名:git config --unset user.name
d、取消设置用户名:git config --unset user.email

签名信息保存位置:./.git/config 文件
如:
在这里插入图片描述
设置完成之后可以再使用git config --list命令进行查看


系统用户级别:登录当前操作系统的用户范围
a、设置用户名:git config -- global user.name [用户名] ‘你在github上注册的用户名’;
b、设置用户邮箱:git config -- global user.email [邮箱] ‘注册时候的邮箱’;
c、取消设置用户名:git config -- globa --unset user.name
d、取消设置用户名:git config -- globa --unset user.email
签名信息保存位置:~/.gitconfig 文件

注意:git config --global 参数,有了这个参数表示你这台机器上所有的git仓库都会使用这个配置,当然你也可以对某个仓库指定不同的用户名和邮箱
在这里插入图片描述

签名级别优先级:

  1. 就近原则:项目级别优先于系统用户级别,二者都有时采用项目级别的签名
  2. 如果只有系统用户级别的签名,就以系统用户级别的签名为准
  3. 二者都没有是不允许,至少要设置一个签名。

3.3、查看文件提交到暂存区状态

命令:git status

本章节我们要用到vim编辑器,如果对vim命令不熟的同学可以参看文章:
vim 命令使用小结

演示:
1、使用命令查看文件提交状态
在这里插入图片描述

2、新建一个文件,再查看状态

新建文件可以用touch [文件名]也可以用vim [文件名]
还可以用echo ,例如:
在这里插入图片描述
该命令和vim一样,可以直接生成一个txt文件,且能将文本内容直接写入txt文件。

这里我们就使用vim编辑器来创建文件:
在这里插入图片描述
写入文件内容:
在这里插入图片描述
再次查看状态:
暂存区对比工作区,发现一个未提交的文件
在这里插入图片描述


3.4、提交文件到暂存区

查看暂存区是否有文件,可以使用命令git ls-files -s(不要求掌握)

命令:git add [文件名] #提交指定文件到暂存区
git add ./    #提交所有内容到暂存区

Demo.txt文件提交到暂存区:
在这里插入图片描述
只要执行了git add,此时该文件就是一个已跟踪文件,已经执行了快照,能通过哈希值找到。存在于暂存区的Demo.txt文件此时状态为已暂存(stage),如果想要删除该文件,可使用命令git rm --cached Demo.txt删除暂存区文件,此时文件状态就变成了未暂存(unstage)


3.5、提交文件到本地库

命令: git commit [文件名]

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
提交完成以后:
在这里插入图片描述
在工作区查看提交的文件:
在这里插入图片描述


3.6、修改文件到本地库

在原有的Demo.txt文件上修改东西增加点东西:
在这里插入图片描述
在这里插入图片描述
查看状态:
在这里插入图片描述
此时git在工作区检测到一个未提交的文件,并提示:
可以使用 git add [文件名]命令提交到暂存区
可以使用git checkout [文件名] 去放弃(取消)本次修改

可以使用git commit -a [文件名] 直接提交到本地库

也可以加上提交备注:git commit -a -m [备注] [文件名]
其实该命令的底层也是先执行了git add ,然后才提交到本地库
-a 就是 git add的简写

现在我们将修改的文件放到暂存区
在这里插入图片描述
添加文件到本地库,并机上注释:

命令:git commit -m [备注内容] [要提交的文件]
在这里插入图片描述


3.7、查看文件修改内容和时间

命令:git blame [文件名]
在这里插入图片描述

3.7、查看提交历史

命令:git log 显示提交的详细信息。
包括:哈希值(版本码)、签名用户和邮箱,提交时间,备注

在这里插入图片描述

命令:git log --pretty=oneline
显示版本哈希值、备注
在这里插入图片描述

命令:git log --oneline
显示部分哈希值和备注
在这里插入图片描述

命令:git reflog
除了显示版本哈细值,备注,还显示当前指针需要移动的步数才能回到指定版本。
在这里插入图片描述


3.8、历史版本前进与回退

命令:git reset --hard [版本号]
该命令可用于git历史版本的前进与后退
在这里插入图片描述
同样,该命令都可以用于版本前进与后退

使用^符合,该符合只能往后,不能往前
命令:git reset --hard HEAD^
如果想要后退两步,三步可以这样写:
git reset --hard HEAD^^
git reset --hard HEAD^^^
在这里插入图片描述

如果我们想要回退到第20个版本,我们不可能写20个^,此时我们可以使用~
同样该符号只能回退,不能前进
命令:git reset --hard HEAD~[后退次数]
在这里插入图片描述

3.9、reset 命令的三个参数对比

控制指针的命令:git reset 有三个参数:

--soft 参数
1、仅仅在本地库移动HEAD 指针
解释:本地库虽然移动了版本指针,此时暂存区和本地仓库的的历史版本还是移动指针之前的。此时使用git status查看暂存区状态,由于工作区和暂存区内容一致,暂存区可以等待执行git commit [文件名]提交内容到本地库

--mixed参数:
1、在本地库移动HEAD 指针
2、重置暂存区
解释:本地库移动了版本指针,暂存区的内容也随着指定版本更新内容,此时由于工作区与暂存区文件内容不同,所以用户可以选择执行git add [文件名]直接提交更新到暂存区

--hard参数:
1、在本地库移动HEAD 指针
2、重置暂存区
3、重置工作区
解释:本地库移动了版本指针,工作区和暂存区也随着指定版本更新内容。


3.10、删除操作

命令:rm [文件名] #删除工作区文件,需要执行git addgit commit才能提交到本地库
命令:git rm [文件名] #删除工作区文件,并执行git add提交到了暂存区,修改成了暂存状态,此时只需要直接使用git commit -m [备注] [文件名]即可提交到本地库


3.11、找回本地库已删除文件

提示1
Git只会增加版本记录,不会删除,哪怕本地库做了删除操作都会增加版本记录。
所以即便是后退到了一开始的版本,最终修改后的版本也会存在,可以随便进、退。
提示2
缓存区删除的文件,可以在工作区重新提交。

问题:本地库删除的文件怎么找回呢?
答案因为git不会删除版本记录,所以使用指针回退到未删除的版本即可。
1、新建一个文件并提交到本地库:
在这里插入图片描述
2、从本地库删除文件
在这里插入图片描述
3、从本地库找回文件:
在这里插入图片描述


3.12、比较文件差异

命令:git diff [文件名] 工作区的文件内容和暂存区进行比较

修改文件内容:
在这里插入图片描述
在这里插入图片描述
2、工作区内容和暂存区进行比较:
在这里插入图片描述

命令:git diff HEAD [文件名] 工作区的文件内容和本地库进行比较
在这里插入图片描述
也可以指定和某个历史版本进行比较:
在这里插入图片描述

如果不写比较的文件名称,那么就会列出所有的所有 有差异的文件:
命令:git diffgit diff HEAD
在这里插入图片描述


3.12、三个常用的撤销命令

git commit --amend 撤销上一次提交 ,并将暂存区文件重新提交
git checkout -- <file> 拉取暂存区文件 并将其替换成工作区文件
git reset HEAD -- <file> 拉取最近一次提交到本地库的文件,到暂存区 改操作不影响工作区

简单的来说 就是可以帮我们从版本库中 拉取文件到 暂存区 当我们把工作区的某个文件弄乱了 我们就可以使用该命令 把版本库中的那个文件拉到暂存区 然后在拉回工作区
详细参考:https://blog.csdn.net/qq_36431213/article/details/78858848


3.13、文件重新命名

命令:mv [原文件名] [新文件名] #修改工作区文件名
git mv [原文件名] [新文件名] #重命名工作区文件,并执行了git add提交到暂存区。


四、分支管理

4.1、分支简介

  假如某某游戏公司要开发王者荣耀,在游戏框架和英雄角色模型确定的情况下进行开发。接下来要做的事情是游戏团队设计英雄技能,美工负责设计英雄皮肤,文案负责设置英雄背景故事。那么此时是不是需要等文案写完所有英雄故事,然后游戏开发才开始设计英雄技能,完了美工才开始英雄皮肤。如此下来整个游戏的开发周期会大大增加。而分支管理就可以实现这一需求,将整个游戏开发设计为一下分支同时进行:

  游戏框架和已的所有角色模型确定为master主干分支
英雄文案策划为子分支分支A
英雄皮肤设置为子分支分支B
游戏上线如果存在Bug需要在不停止服务情况下修复分支hot_fix
然后几个子分支在主干分支的基础上,各自完成各自的开发工作,使游戏正常运营。
在这里插入图片描述
作用:

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

4.2、分支操作

在使用git init初始化完本地库之后,就创建了master主干分支。

4.2.1、查看所有分支

查看当前所有分支

命令:git branch #查看所有分支,* 号代表当前工作分支
git branch -v #查看分支详情,包括分支指向的commitId及提交信息
在这里插入图片描述


4.2.2、新增分支

命令:git branch [分支名]
在这里插入图片描述


4.2.3、重新命名分支

命令:git branch -m <branch_name> [新分支名称]
在这里插入图片描述


4.2.4、切换分支

命令: git checkout [分支名] 切换到指定分支
git checkout -b [分支名] 创建并切换到指定分支
在这里插入图片描述
注意很严重的坑
使用git check的之前最好使用git status查看一下项目是否有未暂存的修改 或 有未提交的暂存,如果当前分支的工作区上存在以上其中一种情况,且此时又执行了git check切换到主分支,git为了不让子分支上工作区中的文件丢失,会保存到主分支。那么此时主分支上会看到这个文件,此时主分支相当于受到了污染,当主分支执行commit之后就会将污染提交到版本库。


4.2.5、合并分支

  如果两个分支没有产生分叉情况,那么会进行快速合并,即fast-forward方式,它并不会产生新的commitId,只是改变了指针的指向,产生分叉合并可能会有冲突情况。

合并分支:
第一步:1、切换到接受修改的分支(被合并,增加新内容)上
命令:git checkout [被合并分支名]
第二步:执行merge 命令
命令:git merge [有新内容分支名]

演示:合并hot_fix分支到master分支,此时合并为fast-forward方式
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

合并分支:
第一步:1、切换到接受修改的分支(被合并,增加新内容)上
命令:git checkout [被合并分支名]
第二步:执行merge 命令
命令:git merge [有新内容分支名]
在这里插入图片描述

分支合并细节

git merge --no-ff -m "msg" <branch_name> #合并分支时禁用Fast forward模式

  我们知道如果使用fast-forward方式进行分支合并,只是简单改变了分支指针,而不会产生新的commit记录。
为了保证合并数据的完整性,我们也可以在合并时指定不使用fast-forward方式,使用 --no-ff 选项。这样,在merge时就会生成一个新的commit,从日志上就可以看到分支合并记录了。
例子:
在这里插入图片描述
在这里插入图片描述


4.2.6、合并分支冲突解决

  当对分叉分支进行合并时,如果两个分支都对同一文件进行了修改,那么合并时就有可能会产生冲突情况。
如果两个分支对同一文件的修改是有规律的,比如对不同地方的修改,那么git工具可以实现自动合并,如果无法自动合并,则需要对冲突文件进行手动修改,修改完成后使用git add表示冲突已经解决,然后使用git commit进行提交

冲突的解决
第一步:编辑文件,删除特殊符号
第二步:把文件修改到满意的程度,保存退出
第三步:git add [文件名]
第四步:git commit -m “日志信息”
注意:此时commit 一定不能带具体文件名

演示:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
同样,主干分支也对该文件进行操作:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在svn里面,如果合并产生冲突,是会产生一个冲突文件的,但是git里面不会产生冲突文件,而是在冲突文件中的内容作了特殊标识:
在这里插入图片描述
在这里插入图片描述
此时我们主要对该文件就行修改,修改成自己想要的效果,然后提交到本地库即可解决冲突:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


4.2.7、删除分支

注意:删除分支前都需要先切换到其他分支才能进行删除操作

命令:git branch -d [分支名]
删除一个干净的分支(即 相对当前分支而言该分支没有过提交记录就为干净的分支)在这里插入图片描述

命令:git branch -D <branch_name>
#强制删除一个分支,该分支如果存在过提交记录,想要删除就必须使用 -D
在这里插入图片描述


4.2.8、恢复分支

思路
对于已经有提交记录的分支删除后,实际上只是删除指针,commit记录还保留,如果想恢复,需要使用git reflog查找该分支指向的commitId,然后根据commitId创建新的分支

命令:git branch <branch_name> <hash_val>#根据指定commit创建新分支
在这里插入图片描述
在这里插入图片描述
注意回退指针的方式是不能恢复分支的
如:
在这里插入图片描述


4.2.9、分支应用场景模拟

场景:
公司的商城系统存在一个bug,bug代号为 [53],此时需要在不停止项目服务的情况修复bug,测试通过后合并的主分支上。
正在修复【53】bug的过程中,这时候老板突然打电话给你,让你紧急去解决【68】bug,此时该怎么做?

1、新创建一个分支去修复[53]bug
在这里插入图片描述

2、此时你接到老板的电话,紧急处理【68】bug,也就意味的需要去创建一个分支先处理【68】bug,为了不让【53】bug的工作白做,需要先将【53】bug提交:
在这里插入图片描述
3、创在【68】Bug分支来紧急出来68Bug:
在这里插入图片描述

查看一下此时的分支图:在这里插入图片描述
当然也可以使用gitk工具来查看:
在这里插入图片描述
在这里插入图片描述

4、处理完成以后进行合并:
在这里插入图片描述
合并完成之后可以删除分支:
在这里插入图片描述

4、完成提交:
在这里插入图片描述


五、 Git基本原理

5.1、哈希

  哈希是一种加密算法,是一个将明文转化成密文的过程,无论是音频、视频都可以使用哈希算法加密。包括MD5也就哈希算法中的一种。
在这里插入图片描述
哈希是一个系列的加密算法,各个不同的哈希算法虽然加密强度不同,但是有以下
几个共同点:
①不管输入数据的数据量有多大,输入同一个哈希算法,得到的加密结果长度固定。
②哈希算法确定,输入数据确定,输出数据能够保证不变
③哈希算法确定,输入数据有变化,输出数据一定有变化,而且通常变化很大
④哈希算法不可逆
Git 底层采用的是SHA-1 算法。
哈希算法可以被用来验证文件。原理如下图所示:
在这里插入图片描述


5.2、Git 保存版本的机制

5.2.1 集中式版本控制工具的文件管理机制

  以文件变更列表的方式存储信息。这类系统将它们保存的信息看作是一组基本文件和每个文件随时间逐步累积的差异。
比如SVN,在svn服务器上保存的就是在原来的版本上修改的东西,当你想要某个版本的时候,SVN服务器就将原版本内容和改本的内容进行合并,从而生成你想要的版本。该方式能够节省保存服务器的空间。


5.2.2 Git 的文件管理机制

  Git 把数据看作是小型文件系统的一组快照。每次提交更新时Git 都会对当前
的全部文件制作一个快照并保存这个快照的索引。为了高效,如果文件没有修改,
Git 不再重新存储该文件,而是只保留一个链接指向之前存储的文件。所以Git 的
工作方式可以称之为快照流。


5.2.3、 Git 文件管理机制细节

一个文件,使用了git add命令之后就会生成一个git对象,此时目录中会生成index,这个index文件就是暂存区,在生成暂存区之前,底层会先生成一个树对象,树对象中包含了所有add的文件,然后执行快照放入object文件夹中,此时才完成git add整个流程。也就是其实执行git add之后,是先执行了快照放入了本地库,然后才存入了暂存区中。

Git 的“提交对象”
在这里插入图片描述
提交对象及其父对象形成的链条:
在这里插入图片描述


5.3、Git 分支管理机制

分支管理机制详细讲解请参考官方文档:Git 分支 - 分支简介


六、Git & GitHub团队协作

  学习完成团队内部的git之后,现在我们来使用git操作远程库(代码托管中心GitHub)来进行学习。
为了方便学习,首先在GitHub上注册三个邮箱账号:

创建细节参考文章:
https://blog.csdn.net/weixin_42693104/article/details/82584849

------公司团队项目经理账号: XlangVlang
------公司团队成员账号:xiaojie874062877
------路人账号:XiaoWang9527

6.1、团队内协作

在这里插入图片描述

项目经理创建远程仓库:

1、登录项目经理账号,新创建个仓库,不对仓库进行初始化。
在这里插入图片描述
创建一个空仓库,不对仓库进行初始化:
在这里插入图片描述

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


项目经理创建本地仓库

1、项目经理在本地创建一个本地仓库,并将代码推送至远程仓库。

新建一个文件夹作为本地仓库:
在这里插入图片描述
初始化本地库:
在这里插入图片描述
设置项目级别签名:
在这里插入图片描述
在工作区里面新建文件,并提交到本地库:
在这里插入图片描述

项目经理为远程仓库配置别名与其对应的URL

为远程仓库配置别名与其对应的URL

命令:git remote -v #显示远程仓库使用的Git别名与其对应的URL ,别名可以随便取
命令:git remmote add [项目别名] [URL] #这个Url地址是远程仓库的url
在这里插入图片描述

演示:
在这里插入图片描述


项目经理推送本地仓库到远程仓库

命令:#查看分支图
git log --graph --decorate --oneline --simplify-by-decoration --all

命令:git push [项目别名] [分支名] #本地仓库代码推送到远程仓库

注意:因为远程仓库地址我们使用的是https协议的,现在我们要将本地库代码推送到远程库,需要告诉远程库是谁来访问的自己,由于我们来项目成员和项目经理对远程库访问的演示,所以在使用不同角色访问远程库的时候记得删除访问凭据信息,否则提交到远程库的信息将不会变:
在这里插入图片描述
在这里插入图片描述

演示:
在这里插入图片描述
推送成功:
在这里插入图片描述

刷新GitHub:
在这里插入图片描述
在这里插入图片描述


成员克隆远程仓库到本地

命令:git clone [远程仓库URL] #成员克隆项目到本地
在这里插入图片描述

项目成员新建一个文件夹,进行初始化,并设置签名,然后直接从远程仓库上克隆项目:
在这里插入图片描述


项目经理邀请成员加入团队

在项目成员完成项目代码的时候,想要将自己的内容提交到远程库,前提条件是该成员已经受到远程库创建者的邀请,加入了一个团队中:
1、远程仓库发出邀请
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、项目成员接收邀请
发送邀请成功以后,被邀请者的邮箱会收到一封邮件,只要他登录邮箱,接收邀请即可。
在这里插入图片描述
然后项目经理重新登录远程库,发现已经成功邀请了成员:
在这里插入图片描述


成员推送内容到远程库

命令:git push [项目别名] [分支名] #成员推送任务到远程库

演示:
在这里插入图片描述
此时再刷新页面,发现:
在这里插入图片描述


项目经理更新成员提交的内容

命令:git fetch [远程仓库别名] [分支名]
#查看分支图
命令:git log --graph --decorate --oneline --simplify-by-decoration --all
知识:在项目的clone与push的过程中,本来只存在两个分支,一个是本地的master分支,一个是远程仓库的master分支,然后现在由于成员push了内容,所以会在本地master和远程master分支中间生成一个远程跟踪分支(中介分支),所以在更新远程仓库数据的时候,会先将数据更新到中介分支上,我们需要使用主分支将中介分支上的内容进行合并。

演示:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


6.2 深入远程跟踪分支

远程跟踪分支

知识
1、远程跟踪分支是在执行git push之后默认生成了别名为origin远程跟踪分支的。
2、只有在clone的时候,本地分支(master)和远程跟踪分支(taobao/master)是有数据同步的。无论是执行git push(推送)或是git fetch(拿取)的时候,都是本地分支和远程分支做通讯,

1、一般公司成员在克隆完远程仓库项目的时候,不直接对主分支做修改,而是新建一个分支,然后在分支上修改代码。:

在这里插入图片描述
刷新远程仓库GitHub:
在这里插入图片描述
在这里插入图片描述
在push之后,确实生成了一个远程跟踪分支:
在这里插入图片描述

2、项目经理去feath项目跟新的文件,因为远程仓库上有两个分支,如果想要都拿到两个分支的文件,项目经理需要也创建一个对应的子分支来获取更新文件:
在这里插入图片描述
在这里插入图片描述
整个拿取子分支文件的过程比较复杂繁琐。

问题:每次push都需要指定分支名称才能提交,而且fetch之后,需要合并才能拿到数据,其中最主要的原因还是因为中间有个跟踪远程分支。那么我们可以在push的时候直接不写项目名和分支名进行推送吗?

实践结果:
经过实践后发现,成员主分支(master),在做了文件修改之后可以通过直接使用git push推送到远程库,因为只有执行了clone命令才和远程库同步,但是子分支(xiaojie_A)则不行,会报语法错。
事实上,无论我们执行push还是执行fetch都是远程跟踪分支和远程分支在做交互,那么我们如何从能直接从本地分支推送到远程分支,或者直接从远程分支拿取到本地分支呢?
在这里插入图片描述
此时,此时如果项目经理想要拿数据,可以使用更高级的命令git pull,前提也是要对成员子分支进行跟踪才可以,因为成员master执行了clone命令的分支,所以成员分支可以直接git pull
在这里插入图片描述
成员可以直接pull:
在这里插入图片描述

总结
1、当clone克隆一个分支的时候,其实是自动创建了一个跟踪origin/master的master的分支,所以可以直接pull和push。

2、git fetch命令或拿取所有远程库上更新的文件,但是不会去和远程跟踪分支建立跟踪关系,需要自己进行手动合并,执行merage

3、如果想要去让别人共享一个,那么可以使用以上的方式共享到远程库。如果不想让别人共享,那么可以不进行追踪。同事也可以在创建一个分支的时候就执行让其去跟踪远程跟踪分支:命令: git branch -b xiaojie_A origin/xiaojie_A
使用命令:git branch -vv可以查看所有跟踪分支
例如:
在这里插入图片描述

正常的数据推送和拉取步骤:
1、确保本地分支已经跟踪了远程跟踪分支:git branch -u [想要追踪的远程跟踪命令]
2、拉取数据:git pull
3、上传数据:git push


git pull和git fetch的区别:

相同点
首先在作用上他们的功能是大致相同的,都是起到了更新代码的作用。
#fetch
.fetch:相当于是从远程获取最新版本到本地,不会自动merge

git fetch orgin master //将远程仓库的master分支下载到本地当前branch中
git log -p master ..origin/master //比较本地的master分支和origin/master分支的差别
git merge origin/master //进行合并

这个命令会访问远程仓库,从中拉取所有你还没有的数据。 执行完成后,你将会拥有那个远程仓库中所有分支的引用,可以随时合并或查看。

  如果你使用git clone 命令克隆了一个仓库,命令会自动将其添加为远程仓库(git remote -v)并默认以 “origin” 为简写。 所以,git fetch origin 会抓取克隆(或上一次抓取)后新推送的所有工作。 必须注意 git fetch 命令会将数据拉取到你的本地仓库 - 它并不会自动合并或修改你当前的工作。 当准备好时你必须手动将其合并入你的工作。

  如果你有一个分支设置为跟踪一个远程分支,可以使用 git pull命令来自动的抓取然后合并远程分支到当前分支。 这对你来说可能是一个更简单或更舒服的工作流程;默认情况下,git clone 命令会自动设置本地 master 分支跟踪克隆的远程仓库的 master 分支(或不管是什么名字的默认分支)。 运行 git pull 通常会从最初克隆的服务器上抓取数据并自动尝试合并到当前所在的分支。

#pull
git pull:相当于是从远程获取最新版本并merge到本地

git pull origin master //相当于git fetch 和 git merge

:用git pull更新代码的话就比较简单暴力了但是根据commit ID来看的话,他们实际的实现原理是不一样的,所以不要用git pull,用git fetch和git merge更加安全。


删除远程分支

三个命令一般配套使用

命令:git push origin --delete [远程分支名] #删除远程分支
命令:git remote prune origin --dry-run #列出仍在远程跟踪但是远程已经删除的无用分支
命令:git remote prune origin #清除上面命令列出来的远程跟踪


6.3、远程协作冲突

远程操作的时候,无论是执行push还是pull的时候都会有冲突的发生。
从头做一遍演示,并显示解决冲突问题:

1、登录GitHub新建一个仓库在这里插入图片描述

2、创建一个本地仓库,放入项目代码,并将文件push到远程仓库:
在这里插入图片描述
在这里插入图片描述
推送代码到远程仓库:
在这里插入图片描述

3、B团队成员从远程仓库上克隆代码,修改项目内容后提交:
在这里插入图片描述
在这里插入图片描述
小王邀请小张加入开发团队,一起做XXDong项目:
在这里插入图片描述

然后小张就可以顺利提交代码到远程仓库了:
在这里插入图片描述
在这里插入图片描述

4、小王从远程仓库从拿取项目文件:
在这里插入图片描述
在这里插入图片描述

5、小王现在又接到某个任务,需要写某个功能的代码,为了项目的安全性,小王决定新建一个分支,并在分支上完成功能后再进行合并:
在这里插入图片描述
6、小李此时想要更新小王的提交到远程库上的最新文件,然后自己也在分支上新增一个文件:
在这里插入图片描述
在这里插入图片描述
7、小王再创建有一个追踪分支,然后从上获取文件:
在这里插入图片描述

8、制造一个冲突:
此时小王和小李同时对一个文件进行修改,且小李先修改好文件进行了推送:
小李推送任务:
在这里插入图片描述
小王修改好文件正要推送:
在这里插入图片描述
9、冲突解决:
小王先get pull代码,然后再进行修改:
在这里插入图片描述
这个时候就解决问题了。
同样,如果小李修改了文件,并被push到远程仓库,此时小王也对同样的文件进行修改,修改了以后文件执行pull,这时候也会报冲突问题。小王可以将文件放到本地库中,然后先pull代码,再修改冲突,修改完成以后再执行push即可。


6.4、团队外协作

  如果你想要参与某个项目,但是并没有push推送权限,这时可以对这个项目进行“派生(Fork)”。派生是指GitHub将在你们空间中创建一个完全属于你的项目副本,且你对副本具有完全的操作权限。通过这种方式,项目的管理者不需要忙着把用户添加到贡献者列表并给予他们推送权。非对内成员可以派生这个项目,将修改推送到派生的项目副本中,并通过创建合并请求(Pull Request)来让非队内成员的改动进入源版本库中。
在这里插入图片描述
:所有的开源下项目都有一个fork功能。
在这里插入图片描述
在这里插入图片描述

流程演示:
1、模拟去远程仓库上fork一个项目源码:
在这里插入图片描述

然后fork一个该项目到自己的GitHub远程仓库:
在这里插入图片描述

fork完成以后就可以在自己的仓库里面找到该项目在这里插入图片描述

2、新建一个文件夹作为本地仓库,然后去自己的远程仓库clone到本地:
在这里插入图片描述
在这里插入图片描述

2、由于现在是项目的A1_branch分支代码出问题了,所以进入该分支修改并提交:
在这里插入图片描述

3、确定修改已经提交成功以后,发送pull请求,等待公司团队审核。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4、此时公司团队项目经理重新登录GitHub,然后对pull请求进行审核:
在这里插入图片描述
在这里插入图片描述
查看bug详情,并回复小张,拒绝审核通过:
在这里插入图片描述

5、小张再次登录GitHub,查看pull请求:
在这里插入图片描述
在这里插入图片描述

6、看到回复后小张继续修改代码,然后进行再次提交。
在这里插入图片描述
点击“close and comment”以后:
在这里插入图片描述
此时就算是项目经理登录,也看不到他的回复了。如果想要让项目经理知道,只能是修改完成Bug以后重新发起Pull 请求:
方法一(本方法)
在这里插入图片描述
在这里插入图片描述

方法二
项目经理登录:
在这里插入图片描述
在这里插入图片描述
显示:
在这里插入图片描述
此时点击按钮进行合并即可:
在这里插入图片描述
在这里插入图片描述

7、项目经理再次审核,然后进行合并操作(合并操作如上图所示)。

8、查看是否合并成功:
在这里插入图片描述

9、如果此时又出现了问题,项目经理需要再向小张求助:
在这里插入图片描述
然后拉到最下面,提交文件:
在这里插入图片描述

10、由于小张是fork的之前的版本,但是最新提交的版本又没有,该怎么做呢?
登录小张github,发现版本没变:
在这里插入图片描述
此时需要重新换一个项目别名或者重新建立项目别名与访问URL的关系,去重新pull项目:
在这里插入图片描述


七、Git中.gitignore的配置语法

  在日常的开发中,当我们需要将一个项目提交到Git时,并不是所有的文件都需要提交,比如一些自动生成的文件,这时候就可以使用.gitignore来忽略一些不需要提交的文件,本文着重介绍一下.gitignore的配置语法。

创建
当使用Eclipse时,我们需要在提交Git之前,需要自己创建一个.gitignore文件,由于Windows下创建文件必须键入文件名,而要创建的.gitignore是没有文件名的,所以我们可以使用move命令来实现,打开Git Bash ,使用mv gitignore .gitignore,然后可以编辑器编辑这个文件。
在这里插入图片描述

在这里插入图片描述

常用的规则

/mtk/ 过滤整个文件夹
*.zip过滤所有.zip文件
/mtk/do.c过滤某个具体文件

以上规则意思是:被过滤掉的文件就不会出现在你的GitHub库中了,当然本地库中还有,只是push的时候不会上传。
除了以上规则,它还可以指定要将哪些文件添加到版本管理中。

!src/不过滤该文件夹
!*.zip 不过滤所有.zip文件
!/mtk/do.c不过滤该文件

1、配置语法:
以斜杠/开头表示目录;
以星号*通配多个字符;
以问号?通配单个字符
以方括号[]包含单个字符的匹配列表;
以叹号!表示不忽略(跟踪)匹配到的文件或目录;

此外,git 对于 .ignore 配置文件是按行从上到下进行规则匹配的,意味着如果前面的规则匹配的范围更大,则后面的规则将不会生效;

2、示例说明
a、规则:fd1/*
说明:忽略目录 fd1 下的全部内容;注意,不管是根目录下的 /fd1/ 目录,还是某个子目录 /child/fd1/ 目录,都会被忽略;

b、规则:/fd1/*
说明:忽略根目录下的 /fd1/ 目录的全部内容;

c、规则:/*
!.gitignore
!/fw/bin/
!/fw/sf/
说明:忽略全部内容,但是不忽略 .gitignore 文件、根目录下的 /fw/bin/ 和 /fw/sf/ 目录;

Github给出的Android开发中使用的.gitignore模板:

# Built application files
*.apk
*.ap_
# Files for the Dalvik VM
*.dex
# Java class files
*.class
# Generated files
bin/
gen/
out/
# Gradle files
.gradle/
build/
# Local configuration file (sdk path, etc)
local.properties
# Proguard folder generated by Eclipse
proguard/
# Log Files
*.log
# Android Studio Navigation editor temp files
.navigation/
# Android Studio captures folder
captures/
# Intellij
*.iml
# Keystore files
*.jks

忽略文件的具体使用可参考:
Git中使用.gitignore忽略文件的推送

查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. Makefile中的MAKECMDGOALS

    make 在执行时会设置一个特殊变量 : "MAKECMDGOALS" ,该变量记录了命令行参数指定的终极目标列表,没有通过参数指定终极目标时此变量为空。该变量仅限于用在特殊场合(比如判断),在 Makefile 中最好不要对它进行重新定义。 下面通过一个实例来说明此变量的意思,设…...

    2024/4/17 4:28:03
  2. 常见密码正则表达式

    原地址:https://www.cnblogs.com/daizhongxing/p/11593137.html第一种至少8-16个字符,至少1个大写字母,1个小写字母和1个数字,其他可以是任意字符:/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[^]{8,16}$//^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[\s\S]{8,16}$/ 其中 [\s\S] 中的\s空…...

    2024/4/20 12:04:36
  3. mysql事务,select for update,及数据的一致性处理

    转载:https://www.cnblogs.com/houweijian/p/5869243.html在MySQL的InnoDB中,预设的Tansaction isolation level 为REPEATABLE READ(可重读)在SELECT 的读取锁定主要分为两种方式:SELECT ... LOCK IN SHARE MODE SELECT ... FOR UPDATE这两种方式在事务(Transaction) 进行…...

    2024/5/4 18:26:43
  4. opencv打卡第一天:RGB与BGR的相互转换

    方法一: import cv2def BGR2RGB(img):b=img[:,:,0].copy()g=img[:,:,1].copy()r=img[:,:,2].copy()#RGB->BGRimg[:,:,0]=rimg[:,:,1]=gimg[:,:,2]=breturn img img=cv2.imread(lena.jpg) #cv2读入的是BGR格式~,需要转换成RGB img=BGR2RGB(img)方法二: 非常简单! img=cv…...

    2024/4/23 15:07:02
  5. JQuery---基础

    jQuery介绍是JavaScript和查询(Query),它就是辅助JavaScript开发的js类库 核心思想:写到少,做的多,实现很多浏览器的兼容问题常见问题:使用jQuery一定要引入jQuery库 jQuery中的$是一个函数jQuery核心函数是jQuery的核心函数,能完成jQuery的很多功能,是jQuery的核心函数…...

    2024/5/4 14:45:47
  6. 用Go语言通关LeetCode系列--538. 把二叉搜索树转换为累加树

    538. 把二叉搜索树转换为累加树解题思路 借鉴别人思想,使用后序遍历,一次遍历解决问题。二叉搜索树的后续遍历是一个降序排列的数组,假设为 Arr。 累加树: 节点值 = 节点值 + 节点右边的所有值累加根据以上两个知识点,有了以下代码: 代码 /*** Definition for a binary t…...

    2024/5/4 15:25:39
  7. mysql 行转列,多行转一行

    创建表语句: CREATE TABLE student_score( id BIGINT PRIMARY key auto_increment, s_name VARCHAR(20) , s_sub VARCHAR(20), s_score INT );insert into student_score values(null,张三,数学,90); insert into student_score values(null,张三,语文,85); insert into stude…...

    2024/5/4 16:19:07
  8. 姿态角数据标注功能解析‖BasicFinder SaaS 数据标注平台

    数据标注工具的图片标注功能除了标“矩形框”“3D框”“语义分割”还能标什么?近期,BasicFinder SaaS 数据标注平台升级了图片标注模块,增加了姿态角标注功能。姿态角标注为平面数据的标注主体赋予了三维(x、y、z轴)的转向数据。下面为大家讲解如何应用BasicFinder SaaS【…...

    2024/4/23 15:06:57
  9. html5新增表单元素datalist

    html5新增表单元素datalist 下拉框 datalist 下拉框input和datalist要产生联系通过: input的list属性的值 = datalist的id值<form action=""> <!-- 专业:--> <!-- <select name="" id="">--> <!-- …...

    2024/4/23 15:06:59
  10. Linux 环境下安装Oracle11g

    1.先创建组和用户 [root@localhost ~]# /usr/sbin/groupadd -g 54321 oinstall [root@localhost ~]# /usr/sbin/groupadd -g 54322 dba [root@localhost ~]# /usr/sbin/groupadd -g 54323 oper [root@localhost ~]# /usr/sbin/useradd -u 54321 -g oinstall -G dba,oper oracle…...

    2024/4/23 15:06:55
  11. C语言根据分数进行分级评价

    int main (void) {printf ("请输入分数");double a;scanf ("%f",&a);if (a>100)printf ("你这是做梦!\n");else if (a >= 90 && a <= 100)printf ("优秀\n");else if (a >= 80 && a < 90)printf (…...

    2024/4/23 15:06:54
  12. k-size字符串(牛客小白月赛25 组合数学)

    k-size字符串 链接:https://ac.nowcoder.com/acm/contest/5600/B 题解:https://ac.nowcoder.com/discuss/428377 题目描述 牛妹最近在研究k-size字符串。 一个字符串为k-size指,字符串的连续段共有 kkk 个。所谓连续段指尽可能多的相同连续字母组成的子串。 例如:aabbbccc为…...

    2024/4/23 15:06:53
  13. Servlet中如何解决中文乱码问题?

    一、 产生中文乱码的原因? 当表单提交时,浏览器会对中文参数值进行编码(会使用打开表单所在页面时的字符集进行编码),Tomcat服务器默认采用的ISO-8859-1编码得到参数值,两种编码格式不一致就会出现乱码。 二、中文乱码的解决方式?POST请求方式的乱码 POST乱码分析:解决方案…...

    2024/5/4 20:54:00
  14. Python: PYTHONHOME和PYTHONPATH的区别

    Python: PYTHONHOME和PYTHONPATH的区别目录PYTHONHOME和PYTHONPATH的区别6.1.2. The Module Search Pathsys.pathPYTHONHOME和PYTHONPATH的区别官方文档解读:https://docs.python.org/3/tutorial/modules.html6.1.2. The Module Search PathWhen a module named spam is impo…...

    2024/4/23 15:06:51
  15. python 队列(queue)

    from queue import Queue#设置队列上限 q=Queue(maxsize=5)#新进队列 q.put(0) q.put(1) q.put(2) q.put(3) q.put(4)#输出所有队列 q.queue[Out]:deque([0, 1, 2, 3, 4])#阻塞 q.put(5)q.get() [Out]: 0q.queue [Out]: deque([1, 2, 3, 4])...

    2024/4/17 4:29:09
  16. Python函数原型的符号

    问题描述max(iterable, *[, key, default])对于Python的内置函数 max , 它的形参中既包含了 * 还有 [] 那么这些符号有什么具体含义呢? 函数原型 1. * 函数形参列表中的符号 * 表示后面的形参只能是关键字参数 (keyword argument),也就是传入实参的时候必须使用变量名=实参…...

    2024/4/19 18:41:46
  17. 微服务架构:关于构建大规模应用的介绍

    微服务是什么?微服务就是一些协同工作的小而自制的服务。无论现在的影响力如何,分布式系统仍然是最容易被忽视的主题之一,至少在大学层面是如此。没有多少学生理解诸如容器化和容错等概念,你也永远不会看到系统项目赢得黑客马拉松。尽管如此,我认为至少对今天的大规模系统…...

    2024/4/18 9:55:56
  18. 十四、Semaphore

    信号量非常类似于互斥,其区别是,信号量可以同时由多个线程使用。信号量是一种计数的互斥锁定。使用信号量,可以定义允许同时访问受其锁定保护的资源的线程个数。如果需要限制可以访问可用资源的线程数,信号量就很有用。例如,如果系统有3个物理端口可用,就允许3个线程同时…...

    2024/4/17 4:28:51
  19. 最全的 volatile 关键字的总结,赶快收藏一波!

    一、简介volatile是Java提供的一种轻量级的同步机制。Java 语言包含两种内在的同步机制:同步块(或方法)和 volatile 变量,相比于synchronized(synchronized通常称为重量级锁),volatile更轻量级,因为它不会引起线程上下文的切换和调度。但是volatile 变量的同步性较差(…...

    2024/4/17 1:48:04
  20. 设计模式的应用场景(23)--解释器模式

    解释器模式 定义:给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。 优点:容易修改和拓展语法,适用于文法简单并且对处理效率要求低的情况。 缺点:不适用于发杂文法的情况。 使用时机:当有一个语言需要解释执行,并且可…...

    2024/4/17 4:29:15

最新文章

  1. 基于yolov8的苹果腐败检测系统,系统既支持图像检测,也支持视频和摄像实时检测(pytorch框架)【python源码+UI界面+功能源码详解】

    更多目标检测和图像分类识别项目可看我主页其他文章 功能演示&#xff1a; 基于yolov8的苹果腐败检测系统&#xff0c;系统既支持图像检测&#xff0c;也支持视频和摄像实时检测_哔哩哔哩_bilibili &#xff08;一&#xff09;简介 基于yolov8的苹果腐败检测系统是在pytorc…...

    2024/5/4 22:46:28
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. 贪心算法|1005.K次取反后最大化的数组和

    力扣题目链接 class Solution { static bool cmp(int a, int b) {return abs(a) > abs(b); } public:int largestSumAfterKNegations(vector<int>& A, int K) {sort(A.begin(), A.end(), cmp); // 第一步for (int i 0; i < A.size(); i) { // 第二步if…...

    2024/5/3 21:08:13
  4. 大数据学习十三天(hadhoop基础2)

    一: MapReduce概述(了解) MapReduce是hadoop三大组件之一,是分布式计算组件 Map阶段 : 将数据拆分到不同的服务器后执行Maptask任务,得到一个中间结果 Reduce阶段 : 将Maptask执行的结果进行汇总,按照Reducetask的计算 规则获得一个唯一的结果 我们在MapReduce计算框架的使用过…...

    2024/5/2 21:17:01
  5. Docker实战教程 第1章 Linux快速入门

    2-1 Linux介绍 为什么要学Linux 三个不得不学习 课程需要&#xff1a;Docker开发最好在Linux环境下。 开发需要&#xff1a;作为一个后端程序员&#xff0c;是必须要掌握Linux的&#xff0c;这是找工作的基础门槛。 运维需要&#xff1a;在服务器端&#xff0c;主流的大型服…...

    2024/5/4 6:28:47
  6. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/5/1 17:30:59
  7. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/5/2 16:16:39
  8. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/4/29 2:29:43
  9. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/5/3 23:10:03
  10. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/4/27 17:58:04
  11. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/4/27 14:22:49
  12. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/4/28 1:28:33
  13. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/4/30 9:43:09
  14. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/4/27 17:59:30
  15. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/5/4 18:20:48
  16. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/4/28 1:34:08
  17. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/4/26 19:03:37
  18. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/4/29 20:46:55
  19. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/4/30 22:21:04
  20. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/5/1 4:32:01
  21. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/5/4 2:59:34
  22. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/4/28 5:48:52
  23. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/4/30 9:42:22
  24. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/5/2 9:07:46
  25. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/4/30 9:42:49
  26. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  27. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  28. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  29. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  30. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  31. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  32. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  33. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  34. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  35. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  36. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  37. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  38. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  39. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  40. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  41. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  42. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  43. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  44. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  45. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57