Cách tạo lệnh tùy chỉnh cho git-shell? Theo số documentation:Lệnh tùy chỉnh với git-shell
Khi được cung cấp, chương trình sẽ thực hiện không tương tác; có thể là một trong các gói git, git upload-pack, git tải lên-lưu trữ, máy chủ cvs hoặc lệnh trong COMMAND_DIR. Vỏ là bắt đầu ở chế độ tương tác khi không có đối số nào được đưa ra; trong trường hợp này, COMMAND_DIR phải tồn tại và bất kỳ tệp thực thi nào trong đó có thể được gọi là được gọi.
Tuy nhiên, tôi không chắc mình hiểu chính xác điều này. Tôi đã tạo một người dùng tên là gituser, và đưa cho anh ta/usr/bin/git-shell làm một trình bao. Tôi đã tạo một thư mục có tên git-shell-commands và đặt một kịch bản có tên là 'testy' trong đó, nhưng tôi không thể chạy nó thông qua git-shell.
Dưới đây là những gì tôi đang cố gắng từ một máy khác:
$ ssh [email protected] testy
fatal: unrecognized command 'testy'
Lưu ý rằng git-shell đang làm việc, và đáp ứng, nó chỉ không thể tìm thấy lệnh tùy chỉnh của tôi.
Và đây là kịch bản:
:/home/gituser/git-shell-commands# ls -l -a
total 12
drwxr-xr-x 2 gituser gituser 4096 Jan 22 17:35 .
drwxr-xr-x 4 gituser gituser 4096 Jan 22 13:57 ..
-rwxr-xr-x 1 gituser gituser 26 Jan 22 13:58 testy
:/home/gituser/git-shell-commands# ./testy
hello!
:/home/sodigit/git-shell-commands# cat testy
echo "hello!"
Tôi đang làm gì sai? Làm thế nào để chạy lệnh tùy chỉnh với git-shell?
Bạn bắt đầu git-shell như thế nào? Bạn đã xác định 'COMMAND_DIR'? –
Tôi không xác định nó. Tôi giả sử nó là $ HOME/git-shell-commands trong đó $ HOME là thư mục chính của gituser (/ home/gituser). Tôi sử dụng ssh để truy cập git-shell như trong ví dụ trên. – mimrock
Tài liệu nêu rõ rằng các tập lệnh cần được đặt bên trong 'COMMAND_DIR'. Nếu bạn không biết thư mục nào trỏ đến, bạn có thể đặt các tập tin trong đó như thế nào? –