在SVN中,我可以创建一个名为
的存储库myserver/myprojects
然后我可以将一个名为abcproject
的新项目推送到上面的存储库中。它变成了:
myserver/myprojects/abcproject
git是否相似?如果我这样做:
cd abcproject
git init
git add .
git commit -m 'initial commit'
git remote add origin myname@myserver/myprojects
git push origin master
会发生什么?我的本地abcproject
是否与SVN一样存储在myprojects
目录中,或者我是否必须创建名为myprojects
的本地项目,该名称与远程名称相同,然后push
?谢谢你的帮助。
答案 0 :(得分:1)
远程git推送在存储库之间。
你创造了一个"裸露的"服务器上的存储库。然后在客户端上克隆该存储库。克隆创建第二个存储库 - 客户端存储库。
然后,您在客户端上进行提交,并从客户端存储库推送到服务器存储库。
推送从不创建新的存储库。它仅将已存在的更改发送到已存在的另一个更改。
在你给出的例子中,你没有运行" git init"在服务器上,所以你将得到一个错误,即你在远程端指定的路径上没有git存储库。