我为我的许多项目创建了一个远程存储库,因此它是我的目标push
的。与 git 的理念相反,但它充当中央存储库。
然而当我去*.git
服务器上的文件夹有以下形式的目录结构:
- /branches
- /hooks
- applypatch-msg.sample
- commit-msg.sample
- etc
- /info
- exlude
- /objects
- 06
- 1c
- various hex numbers
- pack
- /refs
- /tags
- /heads
- master
- config
- description
- HEAD
这是怎么回事,我确信如果我研究了 git 的内部工作原理我就能弄清楚,但是项目文件在哪里?
Update
我通过以下方式创建了存储库:
- 已有本地 git 存储库
- 本地添加远程
git remote add origin [email protected]:project_name.git
- 在服务器上创建同名的基础存储库
'git init --裸项目名称.git`
- 从本地推送到远程
git push origin master
当您推送到裸仓库时(请参阅“关于“裸”存储库——什么、为什么以及如何修复非裸推送"),您不会在该存储库中看到您的文件,因为根据定义它没有工作树。
您可以添加一个post-receive hook (如图所示post-receive hook)以便签出(并查看)您的文件:
/path/to/bare/repo.git/hooks/post-receive:
cd /path/to/bare/repo.git
GIT_WORK_TREE=/path/to/live/server git checkout -f
如果您只想查看存储在该裸存储库中的文件(或其内容)列表,您甚至无需克隆该裸存储库即可完成此操作。
See "从 Git 服务器访问存储库的文件”,前提是您可以直接访问裸存储库服务器。
GIT_DIR=/path/to/bare.git git log --pretty=format: --name-only --diff-filter=A | sort | grep .
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)