据称,如果用户创建了非裸存储库并通过发出git status
来检查状态,他会看到没有要提交的文件;那么另一个用户可以将文件推送到非裸存储库,以便创建该存储库的第一个用户再次发出git status命令并且将找到不同的对象数据库,这就是为什么在这样的共享中裸存储库是必需的实例! (这是裸仓库可以防止的一个糟糕的场景的例子)Git裸和非裸存储器
我的第一个问题是,如果有人能够提供一个答案,仓库的创建者如何仅仅通过发布git status
来查看第二个用户的变化如果他仍然在本地存储库中工作;也就是说,他看出这种差异的唯一途径 - 在他期望的事物和在遥远的事物中的事实 - 之间的区别 - 首先是推动还是试图合并?如果他确实推动或合并,那么说这是git协作的本质是不正确的。我知道我的想法是错误的,但是有人能告诉我我哪里出错了吗?
第二个问题是裸露的和非裸露的存储库是否是2个独立的存储库或两者之间是否存在连接?换句话说,如果一个用户创建一个裸存储库,然后另一个用户克隆它(创建一个非裸存储库),当第二个用户添加并提交文件然后将它们推送到远程服务器时,服务器端发生了什么? (第二个用户)与另一个存储库一起工作?
从概念上讲,您应该将裸露和非裸露的存储库简单地看作同一存储库的旧版本和新版本,然后阅读有关在Git中使用不同版本的存储库可以执行的操作的信息。 –