与git本地分支同步的远程网站

与git本地分支同步的远程网站,git,amazon-web-services,amazon-ec2,Git,Amazon Web Services,Amazon Ec2,在EC2 AWS实例中,我创建了一个远程裸git存储库,如下所示: @server:~$ mkdir -p /home/myuser/domain.git && chmod 770 /home/myuser/domain.git && cd /home/myuser/domain.git && git init --bare @local:~$ git init git remote add server server:/hom

在EC2 AWS实例中,我创建了一个远程裸git存储库,如下所示:

@server:~$ mkdir -p /home/myuser/domain.git && chmod 770 /home/myuser/domain.git && cd /home/myuser/domain.git && git init --bare
@local:~$ 
    git init
    git remote add server server:/home/myuser/domain.git
    git checkout -b www-dev
    git add .
    git commit -am "Initial"
带一个后接钩:

@server:~$ nano hooks/post-receive
钩子脚本是:

#!/bin/sh
sudo git --work-tree=/var/www/domain --git-dir=/home/myuser/domain.git checkout -f
它有权执行:

@server:~$ chmod +x hooks/post-receive
我从事以下本地回购交易:

@server:~$ mkdir -p /home/myuser/domain.git && chmod 770 /home/myuser/domain.git && cd /home/myuser/domain.git && git init --bare
@local:~$ 
    git init
    git remote add server server:/home/myuser/domain.git
    git checkout -b www-dev
    git add .
    git commit -am "Initial"
但是,当我推送更改时:

@local:~$ git push server www-dev
挂钩失效:

remote: fatal: You are on a branch yet to be born
To server:/home/myuser/domain.git
   06709ae..d1d7ead  www-dev -> www-dev
网站也没有更新。为什么?


我怀疑这个问题是由root调用的
git checkout-f
引起的。但只有根用户才能在/var/www/domain中写入。尴尬的解决方案是,您必须首先推送到主分支:

@local:~$ git checkout -b www-dev
之后,您可以签出到另一个分支机构:

@local:~$ git checkout -b www-dev

但是还有另一个问题:它只部署
主分支。可以找到此问题的解决方案。

尴尬的解决方案,您必须首先推到主分支:

@local:~$ git checkout -b www-dev
之后,您可以签出到另一个分支机构:

@local:~$ git checkout -b www-dev
但是还有另一个问题:它只部署
主分支。这个问题的解决办法是可以找到的