您的更改已复制到/home/user/myProject/myproject.git
. 它们不会自动分发给所有其他克隆。
要在其中看到它们,home/usr/myProject
您还必须将此文件夹设为存储库的克隆并发出git pull
. 在项目本身中拥有“裸”存储库并不是一个好主意。
相反,您可能应该为所有“裸”存储库使用单独的git
存储库。然后,您push
从克隆“repositoryA”更改为中央“裸”存储库,然后pull
从该中央存储库更改为另一个克隆“repositoryB”
$ cd ~
$ mkdir git
$ git init --bare git/myproject.git
$ cd git clone git/myproject myProject
$ ls
git/
myProject/
$ cd myProject/
$ ls
$ cd /var/www/clonedProject/
$ git clone /home/user/git/myproject.git
$ ls
myproject
$ cd myproject
$ touch xxx.php
$ ls
xxx.php
$ git add xxx.php
$ git commit -m "TEST"
$ git push origin master
$ cd ~/myProject
$ ls
$ git pull
$ ls
xxx.php
$
git
它本身是一个“分布式”版本控制系统,这意味着中央存储库的概念是不够的。这意味着,没有一个服务器,但可以是任意数量的“远程”服务器,包括没有。但是,如果您有一个存储库的多个克隆,通常建议至少有一个共享的“远程”,它只能通过git pull
and访问git push
。理论上你可以直接克隆一个非裸仓库(即:git控制下的工作目录),但是push
回这样的仓库通常很麻烦——主要是因为你创建了访问权限的层次结构。