例如,在我的本地计算机上,我在ssh://user@ip/home/user/projects/projecta
当我登录到远程/home/user/projects/projecta
时,我只看到.git
文件夹而没有源文件。我也无法git status
或git checkout master
。它会提示错误fatal: This operation must be run in a work tree
。
我可以克隆回购并获得所有正常工作的文件。
是否可以将源文件与repo一起托管?
答案 0 :(得分:1)
在服务器上使用的Git裸存储库中,没有工作副本,因此您需要使用Git命令并指定要查看文件时要查看的提交。
当你做这样的事情时,对提交,树和blob有一个基本的了解是有帮助的(但不是必要的)(参见Git Objects)。
要查看文件列表,请使用git ls-tree
。
git ls-tree HEAD
您还可以查看子树:
git ls-tree HEAD:src/acme/percolator
您可以使用-r
来显示整棵树。
使用git cat-file
。您需要指定对象类型,即普通文件的“blob”。
git cat-file blob HEAD:LICENSE.txt
答案 1 :(得分:0)
文件都在那里,你正在看一个“裸”的回购。这适用于推送和拉出文件,因此它不会跟踪其阶段或具有工作树。您可以通过以下几种方式访问文件,命令行可以将该目录指定为不同的工作树作为git目录。您还可以设置多个接口,包括gitolite或gitlabs,它们将Web前端放置到repo。