Sử dụng Git Hooks để chạy Rubocop, Brakeman và Rspec

Tram Ho

Trong bài viết này, mình sẽ hướng dẫn cách cài đặt Git Hooks cho ứng dụng Rails của bạn để đảm bảo chất lượng code của mọi người tốt hơn. Nếu mọi người đã và đang làm Rails chắc sẽ không còn lạ lẫm vỡi những khái niệm như Rubocop, BreakmanRspec nữa. Trước khi push code lên Git mọi người thường hay chạy những câu lệnh như rubocop hoặc rspec. Có vẻ hơi mất công “gõ phím” khi bạn phải chạy lần lượt 3 câu lệnh rubocop, rspec sau đó là git push .... Mình sẽ hướng dẫn các bạn chạy lần lượt 3 câu lệnh trên chỉ trong 1 lần “gõ phím”.

Đầu tiên tạo 1 thư mục có tên là scripts trong dự án của bạn.

Sau đó, chúng ta sẽ tạo thêm 3 file bash vào trong thư mục scripts cho mỗi lệnh chúng ta muốn chạy. Trong trường hợp này 3 file bash dùng để chạy Rubocop, BreakmanRspec.

1. scripts/run-rubocop.bash

2. scripts/run-brakeman.bash

3. scripts/run-tests.bash

Chúng ta cũng có thể tạo thêm các file bash khác để chạy những câu lệnh mình mong muốn, tùy theo nhu cầu sử dụng.

Tiếp theo, chúng ta sẽ tạo thêm 2 file bash là pre-commitpre-push

1. scripts/pre-commit.bash

2. scripts/pre-push.bash

Tiếp đến, chúng ta sẽ tạo 1 file bash để liên kết các file bash vừa tạo.

scripts/install-hooks.bash

Tất cả các file cần thiết đã được tạo, trước khi chạy file scripts/install-hooks.bash chúng ta cần cấp quyền truy cập cho nó bằng cách chạy câu lệnh:

Cuối cùng, chúng ta chạy file install-hooks.bash

Màn hình Terminal sẽ hiển thị

Như vậy, bây giờ mỗi khi bạn thực hiện commit code thì câu lệnh rubocop sẽ tự động chạy và khi bạn thực hiện push code thì 2 câu lệnh breakemanrspec cũng sẽ được tự động chạy. Sẽ tiết kiệm được một chút thời gian giữa các lần commitpush code của bạn. Chúc các bạn thành công.

Chia sẻ bài viết ngay

Nguồn bài viết : Viblo