我和一些开发人员在服务器本地工作,我们都通过RDP连接到那里。
我在D:\ Projects驱动器中设置了一个文件夹,以保存我们的裸存储库。
所有团队成员都在他们的主文件夹中创建了本地副本,并开始工作得很好,我的意思是,每次有人提交并推动另一个人可以拉动并看到变化。
但是我对某些东西感兴趣,如果我查看裸存储库,那里更改的文件没有改变并保留其原始内容!!!
git是否将更改存储在其他地方?!如果是,我怎么能告诉他将更改直接保存在裸存储库文件上?!
示例:(jp user和cr user working)
推送之前
D:\ Projects \ fileA:内容“ABC”
D:\ Versioning \ jp \ Projects \ fileA:内容“ABC D” - >改变
D:\ Versioning \ cr \ Projects \ fileA:content“ABC” - >还没有看到变化
从jp推送到repo并从cr用户拉出
D:\ Projects \ fileA:内容“ABC” - >保留原始
D:\ Versioning \ jp \ Projects \ fileA:内容“ABC D”
D:\ Versioning \ cr \ Projects \ fileA:内容“ABC D”
我正在检查repo文件,右键单击它们并使用Notepad ++进行编辑。
一开始我使用git init创建了repo,然后我意识到我需要的是裸机,所以我将.git的内容复制到了repo的根目录,并修改了配置以将repo标记为裸。
之后,每个开发者都从这个裸仓库中克隆出来,现在一切都很顺利,除了这个小部分,我们需要有一个地方,其中最新的文件可供另一个团队使用,负责设置(对于客户而言) )创造。
答案 0 :(得分:1)
裸存储库不包含工作树,它们包含{-1}} - 非裸存储库文件夹的状态。您无法直接查看存储在其中的文件。
如果您的裸存储库不是真正的裸存储库:推送到普通存储库不会更新工作树并且不推荐进入非裸存储库。
如果您正在查看对象文件夹:对象文件夹中的文件是不可变的,不会被修改。它们只会被删除并添加。
注意:除非您真的知道自己在做什么,否则不应修改裸存储库的内容,因为这可能会破坏存储库。裸存储库应由git本身管理。