2012-02-06 28 views
15

Tôi đã đẩy một trang web để máy chủ từ xa của tôi qua Git nhưng đã nhận lỗiLàm thế nào tôi có thể chạy thủ công hook sau khi nhận trên git?

cannot run post-receive: No such file or directory 

Vì vậy, công cụ này là trên máy chủ, nó vừa không được triển khai vào thư mục công cộng/my.

Tuy nhiên, tôi có tệp sau khi nhận vì vậy tôi không chắc chắn lý do tại sao nó không được tìm thấy. Bây giờ tôi nghĩ tất cả những gì tôi cần làm là tự chạy móc sau khi nhận này để thực hiện việc thanh toán mặc dù tôi không biết cách ...

+0

Kiểm tra xem [this] (http://stackoverflow.com/questions/3563904/git-hook-post-merge-error-cannot-run) có giúp ích gì không. – vpatil

Trả lời

22

Móc là một tập lệnh shell thực thi. Bạn có thể thực hiện nó từ dòng lệnh nếu bạn cần chạy nó bằng tay, mặc dù việc xây dựng dự kiến ​​stdin inuput hơi tẻ nhạt nếu repo của bạn có nhiều hơn một đầu (nghĩa là, bạn sử dụng các nhánh). Nên có một lệnh cấp thấp để làm điều này cho bạn, nhưng tôi không biết điều này.

Giả sử một vỏ bash và một chi nhánh duy nhất trong repo git của bạn ...

# Print the log with full hashes and commit subject, so that you can 
# figure out which hashes to use for the FROM and TO range. 
/path/to/repo$ git log --pretty=%H\ %s 

# assuming the FROM commit identifies as 999988887777 
# and te TO commit identifies as 000011112222 
# (Note: use the full length hashes; I've shortened them for the example) 
/path/to/repo$ .git/hooks/post-receive <<MARK 
999988887777 000011112222 refs/heads/master 
MARK 

... ở trên nên làm việc giống như thật.

+0

Ok bây giờ vì vậy tôi đã chạy trang web.git/hooks/post-receive và nhận "dòng 1: GET_WORK_TREE: lệnh không tìm thấy": -/ – nerdess

+4

D'oh Tôi phát hiện ra điều gì là sai: tất nhiên là GIT_WORK_TREE GET_WORK_TREE – nerdess

+0

Cú pháp MARK làm gì? Tôi đã không thể tìm thấy bất kỳ tài liệu nào về nó. Cảm ơn! – Xgongiveittoya

Các vấn đề liên quan