Skip to contentSkip to main navigation Skip to footer

[Git trên cPanel] Đồng bộ kho chứa Git trên cPanel với máy tính

2020 05 21 B94yRFWL

Trên giao diện cPanel có hỗ trợ một tính năng Git™ Version Control giúp các lập trình viên dễ dàng deploy mã nguồn từ dưới máy trực tiếp lên host hoặc đồng bộ với một kho chứa (repository) khác thông qua Git.

Trước khi sử dụng tính năng này, VINASTAR khuyến khích bạn nên biết sử dụng Git và terminal trước đó. Bạn có thể tham khảo serie Hướng dẫn Git cơ bản để nắm rõ kiến thức về Git.

Tại case này, chúng ta sẽ cùng thiết lập đồng bộ git từ kho chứa trực tiếp trên host cPanel với máy tính mà không cần phải thông qua một kho chứa trung gian nào.

Một số lưu ý:

  • Tên miền chính của gói host phải được trỏ về host để có thể kết nối kho chứa thông qua tên miền.
  • Khi push hoặc pull, fetch từ máy tính thì nó sẽ hỏi mật khẩu, bạn nhập mật khẩu gói host vào.

Trước tiên tại giao diện cPanel, bạn truy cập vào tính năng Git™ Version Control để bắt đầu tạo một kho chứa trên host.

2020 05 21 B94yRFWL
[Git trên cPanel] Đồng bộ kho chứa Git trên cPanel với máy tính 8

Sau đó bạn ấn nút Create bên tay phải để bắt đầu tạo kho chứa.

1648703985 767 2020 05 21 yktml5qZ

Tiếp theo bạn tắt Clone a Repository và bắt đầu nhập thông tin như sau:

2020 05 21 8YQskSrl
  • Repository Path: Nhập đường dẫn kho chứa mà bạn cần tạo, VINASTAR khuyến nghị không nên sử dụng thư mục public_html làm repo vì sẽ dễ bị xung đột các kho chứa với nhau thông qua thư mục .git.
  • Repository Name: Tên kho chứa, viết liền không dấu, không ký tự đặc biệt.

Ấn nút Create để hoàn tất.

Lúc này bạn sẽ chuyển đến màn hình hướng dẫn thiết lập kho chứa này dưới máy tính của bạn, có hai tùy chọn là thiết lập kho chứa vào một thư mục dự án có sẵn, hoặc tạo một thư mục mới. Ở đây bạn có thể chọn lựa chọn phù hợp với bạn, ở đây VINASTAR sẽ lấy ví dụ là tạo một kho chứa mới trên máy.

2020 05 21 QQch8xhG
[Git trên cPanel] Đồng bộ kho chứa Git trên cPanel với máy tính 9

Bắt đầu tại máy tính, chúng ta truy cập vào thư mục cần làm việc với kho chứa trên cPanel với lệnh cd và tạo một kho chứa trên máy tính với git init, và sau đó thêm địa chỉ kho chứa trên cPanel vào thư mục này.

git clone ssh://vinastarweb@vinastarweb.com:2210/home/vinastarweb/azrepo
cd azrepo
    

Bây giờ ta sẽ tiến hành tạo thư một tập tin tên là README.md và push nó lên kho chứa nhé.

echo "# README" >> README.md
git add .
git commit -m "Init commit"
git push -u origin master
    
2020 05 21 2frkG2jn

Bây giờ bạn vào thư mục kho chứa trên cPanel sẽ thấy tập tin README.md vừa được push lên.

2020 05 21 MWFBz5Qo
[Git trên cPanel] Đồng bộ kho chứa Git trên cPanel với máy tính 10

Như vậy là đã hoàn tất việc kết nối kho chứa giữa kho chứa Git trên máy tính và host cPanel.

Deploy tự động với tập tin .cpanel.yml

Ở trên mình đã hướng dẫn bạn tạo một kho chứa trên cPanel, nhưng hãy ví dụ kho chứa đó bạn đang đồng bộ với một website đang trong trạng thái development, còn website production lại nằm ở thư mục khác. Lúc này chúng ta có thể tiến hành sử dụng tập tin .cpanel.yml để deploy một phần hoặc toàn bộ kho chứa qua thư mục website production.

Ở đây mình sẽ lấy ví dụ thư mục production của mình là /home/vinastarweb/public_html/ nhé.

Trước tiên bạn tạo một tập tin .cpanel.yml trong thư mục kho chứa và khai báo nội dung như sau:

---
deployment:
  tasks:
    - export DEPLOYPATH=/home/vinastarweb/public_html/
    - /bin/cp -rf wp-content $DEPLOYPATH
    - /bin/cp -rf images $DEPLOYPATH

Tại đây có nghĩa là chúng ta sẽ khai báo một biến mang tên $DEPLOYPATH là giá trị chứa đường dẫn thư mục website production. Và sau đó mỗi khi chúng ta push từ máy tính lên kho chứa thì task trong tập tin .cpanel.yml sẽ thực thi (như ví dụ ở trên thì copy hai thư mục wp-content và images vào thư mục production. Bạn có thể thêm bao nhiêu lệnh tùy thích.

Tiến hành push nó lên kho chứa trên cPanel.

git add .
git commit -m "Added .cpanel.yml"
git push -u origin master
    

Bây giờ VINASTAR sẽ thử tạo 1 thư mục tên images và tạo cho nó một tập tin bên trong đó.

mkdir images
touch images/hello.txt
git add .
git commit -m "upload 5 folders"
git push origin master
    

Bây giờ bạn có thể thử kiểm tra lại trên File Manager, nó sẽ tự động thực thi lệnh copy thư mục images qua thư mục production.

Chúc các bạn thành công.

Was This Article Helpful?

0
0 Comments

There are no comments yet

Leave a comment

Your email address will not be published. Required fields are marked *