我一直在阅读有关Git中裸机和非裸机/默认存储库的信息。从理论上讲,我还不太了解它们之间的区别,以及为什么我应该“推送”到一个裸仓库。这是交易:
目前,我是唯一在3台不同计算机上从事项目工作的人,但是以后会有更多人参与其中,因此我将Git用于版本控制。我在所有计算机上克隆了裸仓库,当我在其中一台计算机上完成修改时,我提交并将更改推送到裸仓库。根据我的阅读,裸存储库没有“工作树”,因此,如果克隆裸仓库,则不会有“工作树”。
我猜工作树存储了项目中的提交信息,分支等。那不会出现在裸仓库中。因此,对我来说,使用工作树将“提交”提交“回购”似乎更好。
那么,为什么我应该使用裸存储库,为什么不使用?实际区别是什么?我想这对更多的人从事一个项目没有好处。
您从事这种工作的方法是什么?有什么建议吗?
git clone --bare
,将得到裸仓库,如果运行git clone
,将得到非裸仓库。您曾经克隆过的每个公共项目(例如托管在github上)在另一端都是裸仓库。
git clone
可以在裸仓库和非裸仓库之间自由转换。