我今天偶然发现了一些奇怪的事情。我请一位暑期工作的同事帮我为我的代码设置一个新的远程 git 存储库,但我对他所做的和我想做的有很多困惑。我要求他发送他的配置,以便能够查看他的遥控器的路径,但发现他没有遥控器。当我问他这个问题时,他这样解释他的工作流程:
- 在本地更改一些内容
- Commit
- 移动到远程目录
- git pull c:\localdir
因此,他没有推送到远程,而是不断从本地存储库拉取到我们服务器上的存储库。有点逆向工作。当我问他这个问题时,他问我有什么区别,我无法真正回答他,但我认为有一些是对的?
所以我向大家提出的问题是:推送到远程和从远程拉动有什么区别?
推送到远程:将一些提交发送到另一个 git 存储库。 git 存储库被视为“远程”存储库,但它可以是硬盘驱动器另一个文件夹中的存储库。
从远程拉取:从远程存储库获取一些提交并将它们合并到当前的 HEAD 中(当前存储库的签出)
你的同事可能使用拉取而不是推送,因为你的存储库可能不可用(没有运行 git 守护进程,或 gitweb,或 ssh 服务器),但他的存储库可以从你的计算机上获取。由于它是一个服务器,他可能不想暴露 git 守护进程/服务,这可能成为攻击的媒介。
但如果你的存储库是共享/可用的,他就能够这样做:
- 本地改变一些东西
- commit
- 推送到您的存储库
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)