我是git的新手,我浏览了一些视频教程here
看完这些教程后,我尝试使用ssh
与我的朋友建立一个git repo注意:
我设法在一个文件夹中设置我的代码,让我们使用
说'folder1'git init
有我的代码文件。
然后我在我的朋友机器上创建一个空存储库,让我们说“folder2
”,然后使用
folder2
作为一个裸存储库
git init --bare --shared
现在我想将共享仓库设置为folder1
代码的存储库
在此之后,我尝试使用ssh
git remote add origin myFriend@hisIp:/LocationToFile
在此之后,我推送了代码,这给了我一条成功的消息
现在问题是git repo'folder2
'仍然显示一个空的repo(包含空存储库的文件夹),我无法在folder2
中执行git操作
即使我做“git status
”,我也会得到“fatal: This operation must be run in a work tree
”
答案 0 :(得分:9)
因为它是一个裸仓库,所以它没有工作树。请参阅“What's the -practical- difference between a Bare and non-Bare repository?”。
您应该在本地克隆该folder2 repo,以执行您的命令。
# on server:
cd /path/to/folder2
git clone folder2 folder2b
cd folder2b
git status
注意:最好遵循裸仓库目录的命名约定:folder2.git
(而不是folder2
)