git是否需要在服务器上才能使用它?
问题描述:
当我开始使用git时,我的同事告诉我的最突出的好处之一就是git不需要存在于与svn相反的服务器上。git是否需要在服务器上才能使用它?
但这是真的吗?在another thread我读到,至少有一个git-upload-pack
或git-receive-pack
将是必要的。
另一方面,我可以放心地在USB棒上安装一个git仓库。
那么,服务器是否需要安装除ssh之外的任何软件?
答
不,你说的没错,你可以在你的服务器上没有安装git的情况下提供git仓库。 这是因为为git存储库提供服务所需的所有内容都被“存储”在.git
目录中。
但是,与服务器通信(例如做一个clone
,push
,等...),根据你的资料库的地址有一定的运输将使用(refspec
)。如果您使用的是ssh
或git
传输,则服务器端也需要安装git。因为,正如你所说的那样,它会“打包”以更高效格式交换的所有数据。
你可以通过在你的文件系统上安装远程服务器来避开这种情况,并使用'文件'传输。或者你可以上传混帐自己的“替代品”,并用它来代替:
git clone -u /home/you/bin/git-upload-pack [email protected]:code
(来源:git-upload-pack: command not found, how to fix this correctly)
答
每个git仓库就像一个服务器。
一旦你做了git clone
它就成为一个完整的工作仓库,可以作为远程任何其他计算机添加。
他讲的是git的软件,而不是一个仓库。 – Ikke