git error: "Add Remote Repository: '/data/www/examplesite' does not appear to be a git repository"

git error: "Add Remote Repository: '/data/www/examplesite' does not appear to be a git repository"

我已经使用 git 的本地实例(通过 SmartGit)几年了(对远程服务器使用安全的 FTP)。该工作流程可以完成工作,但我想进入现代并将我的更新直接推送到远程服务器。

首先,在遥控盒子上:

[acoder@remote www]# mkdir buymystuffs.com
[acoder@remote www]# cd buymystuffs.com/
[acoder@remote buymystuffs.com]# git status
fatal: Not a git repository (or any parent up to mount point /data/www)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
[acoder@remote buymystuffs.com]# git init
Initialized empty Git repository in /data/www/buymystuffs.com/.git/
[acoder@remote buymystuffs.com]# git status
# On branch master
#
# Initial commit
#
nothing to commit (create/copy files and use "git add" to track)

现在我在本地系统上使用

设置了一个新的 repo

智能git日志:

[master (root-commit) bd5a85f] initial commit
/storage/web/git/buymystuffs.com> git commit --allow-empty --file=/tmp/smartgit-2242088229372859523tmp/commit-95902291203419258.tmp
/storage/web/git/buymystuffs.com> git init
Initialized empty Git repository in /storage/web/git/buymystuffs.com/.git/

接下来我尝试让本地和远程存储库对话:

然后在这里输入我的详细信息:

单击“添加”会产生以下错误:

Add Remote Repository: '/data/www/buymystuffs.com' does not appear to be a git repository Could not read from remote repository.: Please make sure you have the correct access rights and the repository exists.

我已确认我有权访问远程目录:

[acoder@remote www]# ll
total 0
drwxrwx---.  3 apache webdev  18 May 11 15:51 buymystuffs.com

(用户acoder是webdev组的成员)

我还尝试使用 git init --bare 设置远程树。这让我克服了上面的错误。当我更新一个新的本地文档时,我没有看到提交和推送的选项。我只能承诺。我试过了,然后检查了远程树并发现了这个:

[acoder@remote buymystuffs.com]$ ll /data/www/buymystuffs.com
total 12
drwxrwxr-x. 2 acoder acoder   6 May 14 10:32 branches
-rw-rw-r--. 1 acoder acoder  66 May 14 10:32 config
-rw-rw-r--. 1 acoder acoder  73 May 14 10:32 description
-rw-rw-r--. 1 acoder acoder  23 May 14 10:32 HEAD
drwxrwxr-x. 2 acoder acoder 242 May 14 10:32 hooks
drwxrwxr-x. 2 acoder acoder  21 May 14 10:32 info
drwxrwxr-x. 4 acoder acoder  30 May 14 10:32 objects
drwxrwxr-x. 4 acoder acoder  31 May 14 10:32 refs

我尝试提交的不是 index.html 文档。

我缺少哪些步骤才能在本地工作然后将提交推送到上面设置的远程仓库?

经过一些研究,答案是我无法让 git 做我想让它做的事。 /home 和 /data/www 目录(和 /var)都标记为 noexec,这排除了 post-update hook 到 push & deploy

我们无法删除 noexec,所以我有点不走运。如果您有一个可行的解决方案可以让我在 noexec 环境中执行此操作,请跟进。

感谢 SO 用户 muecas 的有益对话。