2017-02-17 1 views
2

Я пытаюсь переместить изменения с моей локальной машины на живой сервер. Я последовал за шагами на this page.Git push to remote «Нет такого файла или каталога»

На моей локальной машине , вот что я получаю, когда я бегу: $ git push web

Counting objects: 3, done. 
Delta compression using up to 8 threads. 
Compressing objects: 100% (3/3), done. 
Writing objects: 100% (3/3), 291 bytes | 0 bytes/s, done. 
Total 3 (delta 2), reused 0 (delta 0) 
remote: /bin/bash: GIT_WORK_TREE=/var/www/html git checkout -f: No such file or directory 
To ssh://MyDomainRemoved.com/var/git/myproject.git 
    d8a9173..7903ea9 master -> master 

На живом сервере, новый совершить шоу в $ git log. У него возникают проблемы с крюком post-receive. Вот то, что после приема файла выглядит как прямо сейчас:

#!/bin/bash GIT_WORK_TREE=/var/www/html git checkout -f 

Несколько вещей, которые я уже пробовал из других потоков я прочитал:

  • Пробовал #!/bin/bash#!/bin/sh и
  • Удалены возврат скрытой перевозки по линии #!/bin/bash. Это позволило запустить bash без открытой ошибки, но до сих пор не имеет такой ошибки файла.
  • Изменение /уаг/WWW/ будет принадлежать пользователю WWW-данные
  • CHMOD /вар/WWW/ до (до сих пор нет такой ошибки файла)

Сервер Ubuntu 16.04.

Любые идеи других вещей, чтобы попробовать?

+1

пожалуйста, включите вывод 'мерзавец удаленного -V' – orvi

+0

@orvi конечно, вы идете: '$ git remote -v' ' origin \t ssh: //[email protected]/myusername/myproject.git (fetch) origin \t ssh: //[email protected]/myusername/myproject .git (push) web \t ssh: //[email protected]/var/git/myproject.git (fetch) web \t ssh: //[email protected]/var/git/myproject.git (push) ' – Wes

+0

где ваш 'post-recive' найти файл? – orvi

ответ

1

Убедитесь, чтобы ваш скрипт на несколько строк вместо одного:

#!/bin/bash 
GIT_WORK_TREE=/var/www/html git checkout -f 

Полная команда будет:

git --work-tree=/var/www/html --git-dir=/var/git/myproject/.git checkout -f 
+0

Это работает. Спасибо, @VonC!Окончательный код был как ваш, но без '/' in '/ myproject/.git' – Wes

Смежные вопросы