1.9 git reset HEAD 管理暂存区中的文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1.9 git reset HEAD 管理暂存区中的文件相关的知识,希望对你有一定的参考价值。
参考技术A 主要使用的命令:git reset HEAD、git checkout步骤解释:创建一个i.php文件,查看工作区状态,这时可以看见i.php文件还没add加入缓存区
解释:这时 , i.php文件还未commit提交 , 只是add加入到了缓存区可以提交变更
解释: 修改了i.php后,查看工作区状态显示i.php这个文件有两个变更 ,
1.暂存区i.php可以commot提交,
2.对i.php文件的修改还未add加入到暂存区
下面来试试 , "git reset HEAD <file>..." 撤出暂存区
解释:可以看到,执行完git reset HEAD i.php命令后 , i.php 撤出暂存区了 , 但是i.php文件修改的内容没有影响 , 只是撤出暂存区
解释:重新把i.php加入暂存区并commit提交了之后再次修改一下文件内容,查看工作区状态,i.php的修改还未加入到暂存区
来使用"git checkout -- <file>..." 丢弃工作区的改动
解释:可以看到,对i.php文件的修改还未加入缓存区并提交的i.php,重新git checkout后已经回退到版本库的版本了,修改的内容不在了
数据仓库:谁发起从多个源提取数据到暂存区,是源还是数据仓库?
【中文标题】数据仓库:谁发起从多个源提取数据到暂存区,是源还是数据仓库?【英文标题】:Data Warehouse: Who initiate extract data from multiple source to staging area, is it the source or the data warehouse? 【发布时间】:2021-04-27 04:10:50 【问题描述】:我有一个关于数据仓库中的 ETL(尤其是提取的)的问题。
从这个article来看,暂存区主要是时间原因,有些甚至不需要暂存区。
假设我有 3 台微服务服务器,每台都有自己的数据库、2 台操作服务器和 1 台数据仓库服务器。
-
服务器 1:计划每天提取数据
服务器 2:数据需要在数据仓库中实时可用
谁将启动提取数据?我的想法是
-
服务器 1:数据提取由数据仓库服务器发起,直接从服务器 1 的数据库中提取,每天调度
Server 2:定时无法调度,所以数据仓库服务器提供API供Server 2使用,Server 2在每次有数据时通过提供的API发起数据提取或者向数据仓库服务器发送数据。
但我不确定,我是否应该向所有运营服务器提供 API 并让他们决定何时将数据发送到仓库?还是直接从操作数据库中提取数据是数据仓库服务器的全部工作?如果是,如何提取实时的?
【问题讨论】:
【参考方案1】:您提出的方法(您每天 ping 服务器 1,但近乎实时地从服务器 2 接收数据)是我过去看到的。不过,您可能需要考虑以下几点:
有时无法将服务器 2 配置为自动 ping API,因为其数据库不支持触发器。如果是这种情况,那么您可能需要定期从 DW ping 服务器 2,例如每五分钟一次。 通常,您会每晚查询服务器 1。也就是说,我可以看到服务器 1 只告诉您何时可以读取它实际上可能会更好。在第二种情况下,您的 DW 不必担心与服务器 1 的时间表同步;如果服务器 1 有处理延迟或其批处理窗口运行时间过长,您的 DW 仍会在数据准备就绪时获取其数据。【讨论】:
以上是关于1.9 git reset HEAD 管理暂存区中的文件的主要内容,如果未能解决你的问题,请参考以下文章