2016-05-27 78 views
0

我正在嘗試使用Git鉤子在FTP中部署mt項目。如何將'GIT_WORK_TREE'設置爲計算機中的特定驅動程序

順便說一句,我用'CYGWIN'來構建。

這是我的環境和設置。

FTP在遠程

C:\ cygwin64 \ test_ftp \

Cygwin的在遠程

C:\ cygwin64 \

遙控器的根

C:\ cygwin64 \家\管理\

混帳/掛鉤/後收到

#!/bin/sh 

DEPLOY_DIR=~/../../test_ftp 
echo "Start deploying..." 
GIT_WORK_TREE=$DEPLOY_DIR git checkout -f 
echo "Deployment is completed." 

它工作正常。

「git push」會觸發「post-receive」並在「C:\ cygwin64 \ test_ftp \」中部署文件。

現在我想 「test_ftp」 的路徑更改爲 「C:\ test_ftp \」,
我嘗試設置 「DEPLOY_DIR =〜/../../../ test_ftp」 並運行「混帳推」。發生

錯誤在部署任務:

遠程:致命:此操作必須在一個工作樹

有什麼辦法來設置GIT_WORK_TREE的輸出路徑的cygwin的運行?

+0

嘗試'/ c/test_ftp /'而不是 – ElpieKay

+0

不能正常工作。 >遠程:致命:無法切換到'/ c/test_ftp /':沒有這樣的文件或目錄 –

+0

稍後找到答案。 –

回答

1

我後來找到了答案。

  1. 編輯文件「C:\ ctgwin64 \ etc \ passwd」。

    將「/ home/Administrator」替換爲「/ cygdrive/c」。

  2. 編輯文件「C:\ ctgwin64 \ etc \ sshd_config」。

    集 「StrictModes沒有」
    集 「AuthorizedKeysFile /路徑/到/你/ authorized_keys的」

  3. 重新啓動 「CYGWIN sshd的」 服務。
  4. 試着在客戶端推送一些東西。

它的工作原理!

現在我可以用密鑰登錄,像往常一樣觸發「post-receive」,並在「C:\ test_ftp」中部署文件。

相關問題