Git 中的奇怪行为 [已关闭]

Weird behaviour in Git [closed]

提问人:Malath Enaim 提问时间:11/17/2023 最后编辑:BiffenMalath Enaim 更新时间:11/17/2023 访问量:56

问:


想改进这个问题吗?通过编辑这篇文章添加详细信息并澄清问题。

昨天关闭。

我正在尝试制作一些场景,因为我想在现实世界中但在服务器上做同样的事情。以下是我尝试做什么以及问题是什么的模拟步骤,我无法理解:

请注意:要查看照片,请输入以下链接:(https://forum.codewithmosh.com/t/changes-from-sql-developer-cannot-be-synchronized/23658

  1. 在中创建新的 Git,假设这将是远程存储库并向其添加一个文件/提交。D/Projects/sqltest4

  2. 在 SQL Developer(版本 23.1.0.097)中克隆此存储库,如下所示

  3. 现在只是一个概述,我们的本地和远程存储库都处于同一状态:

  4. 从 SQL Developer 进行更改,并在 SQL Developer 的 GUI 中执行添加到暂存区域和提交test.txt

  5. 检查本地存储库的状态和日志:

  6. 现在本地存储库比远程存储库早一个提交,因此我需要推送我的提交才能在远程存储库中看到(我将制作推送 GUI)

  7. 现在让我们检查远程和本地存储库上的日志

这里都是合乎逻辑的,head 在本地指向源和主,并且 head 在远程正确指向主节点,我不明白的是为什么我的暂存区域在远程存储库中很脏,为什么我看不到我刚刚在物理上所做的行或更改!

我在 YouTube 上看到了很多 SQL 开发人员将其与 GitHub 存储库连接的 Git 插件的视频,一旦我们创建推送,GitHub 中的文件将立即刷新。

另一种情况是,当我们按照与之前相同的步骤从本地存储库添加新文件时,在这种情况下,远程存储库中的暂存区域是删除!而且我在推送后无法实际看到文件。

我想,在我推送更改后,我会在远程存储库的目录中找到相同的更改,我知道如果我从其他 PC 克隆这个遥控器,我会看到这些更改,但我不明白的是为什么我看不到相同的更改在远程存储库本身。

Git 的

评论

1赞 t.niese 11/17/2023
推送到远程存储库的更改将保存在其目录中,并且不会对 .无论如何,不建议使用非裸露的远程存储库。.git.git
0赞 Malath Enaim 11/17/2023
Hallo @t.niese 感谢您的回答,所以我当前的存储库不是裸露的,我将尝试将其更改为裸露并检查文件是否已更改。再次感谢您的帮助
0赞 t.niese 11/17/2023
裸存储库没有任何签出文件,您的远程存储库不应该有签出文件,其唯一用途是存储您的更改。因此,在您的远程服务器上,您将拥有另一个克隆远程存储库的存储库。而且你必须有自己的逻辑,如果你从另一个推送,它会更新/拉取那个。
1赞 axiac 11/17/2023
“我无法理解的是,为什么我的暂存区域在远程存储库中是脏的”——听起来你的远程存储库不是一个裸露的存储库。虽然可以以这种方式工作,但如果您非常了解 Git 的工作原理并且小心,则不建议这样做。每个人都推送的中央存储库应该是一个裸存储库。裸存储库没有工作树或阶段,它只包含本地目录包含的内容(配置文件中有一些差异)。如果您需要检查推送的内容,请创建另一个克隆,获取并检查。.git
0赞 Malath Enaim 11/17/2023
@axiac So if I understood rightly, I should do the following: <REMOTE SIDE> 1-git init --bare ///////////////////// <LOCALLY> 1-clone [Path of Remote Repo] / Should I write here --bare?? 2-echo hello> file1.txt 3-Add and commit So as I understood, the physically files and changes of file1.txt I would never see until I clone the repository right? So basically on the bare repository would be the .git files or the database history files, nothing will be there related to file1.txt

答: 暂无答案