-1

我有一个远程git存储库,我将它克隆到我的本地存储库,进行了本地更改,当我推送时,我收到了我无法推送到主分支的消息:

[远程拒绝] master -> master(当前已签出分支)

我读到如果我改变它工作的分支,我就会这样做并且工作,但我不能那样工作;我需要当我将更改从本地存储库推送到远程存储库时,更改同时应用于远程存储库上的文件,我不想返回主分支或合并分支。

我也读到我可以使用裸存储库,它对我不起作用。

我看到一些视频,人们直接推送到远程存储库,只需要输入密码,但我不知道如何做到这一点。

4

1 回答 1

1

我也读到我可以使用裸存储库,它对我不起作用。

但是,如果您发现使用 Git 管理网站中描述的过程正在使用带有 post-receive 钩子的仓库(您推送到该仓库),它应该对您有用:

$ mkdir /var/www/www.example.org
$ cat > hooks/post-receive
#!/bin/sh
GIT_WORK_TREE=/var/www/www.example.org git checkout -f
$ chmod +x hooks/post-receive

在您的情况下,优点是钩子可以检查您需要的任何分支。

注意:密码短语可能与使用 ssh 推送地址和使用受密码保护的私有 ssh 密钥有关。

于 2012-06-05T22:28:51.600 回答